Penso che la questione riguardi la priorità degli operatori. Come è scritto qui:
http://digilander.libero.it/uzappi/C/C-precedenze.html
le parentesi quadre hanno priorità maggiore sull'operatore di deferenziazione *, quindi la scrittura
*x[i]
dovrebbe equivalere a
*(*(x + i)
che ovviamente non è la stessa cosa di
*(*x+i)
quindi in questo caso è meglio utilizzare la notazione a puntatore, così ricorriamo alle parentesi tonde e lasciamo perdere tutte le considerazioni sulle priorità degli operatori :]