Ahhh comincio a capire.Originariamente inviato da oregon
Sì anche se la forma con il puntatore e' piu' flessibile in quanto indichi il passaggio di una stringa ma non ne limiti le dimensioni.
Poiche' la stringa e' un array, e poiche' quando passiamo un array alle funzioni in realta' passiamo la locazione in memoria del suo primo elemento, cioè un puntatore (scritto senza *) tanto vale dichiararla direttamente come puntatore.
Cioe, per vedere se ho capito.
void pippo(char a[50])
equivale a
void pippo(char &a[0])
e quindi in tutte le occorrende dentro la funzione pippo verra' usata la la locazione di memoria del primo elemento di a.
Allora, tanto vale dichiararla come
void pippo(char *a)
cosi', usando a (senza asterisco) all'interno della funzione, uso in effetti la locazione del suo primo elemento, esattamente come sopra...
Giusto?
Ma allora potrei anche scrivere
void pippo(char a[])
ma magari viene considerata meno elegante...o no?
Ciao!
e Grazie!