voglio sapere che cosa è la differenza traPointer vs Array nella definizione della funzione: qual è la differenza tra void fct1 (int * p) e void fct1 (int p [])?
void fct1(int *p)
e
void fct1(int p[])
so che entrambi sono puntatori, ma ci sono differenze
@Mark Ransom vi ringrazia per la rapida risposta. ma ho sentito che int p [] è un puntatore costante, quindi l'indirizzo a cui punta non può essere cambiato è vero? – user2142328
("i puntatori di funzione" sono puntatori alle funzioni, non funzioni che prendono i puntatori .. detto questo, sono sicuro che questo * deve * essere un duplicato.) –
@ user2142328 'p []' dichiara una matrice di una dimensione a essere in seguito determinato. Questo sarebbe illegale in un parametro di funzione, la cui dimensione deve essere nota immediatamente. Quindi in questo contesto è trattato in modo speciale, ottenendo una trasformazione istantanea in '* p'. – Potatoswatter