Il C tratta in modo sostanzialmente uguale gli array come puntatori.
Cioe' questo: V[1] viene letto dal C come *(V+1)
Quindi:
V ha come tipo int** oppure int *[]
V[n] ha come tipo int *
&V[n] ha come tipo di nuovo int **
La funzione inserimento prende int** vettore
quindi vettore[0] e' un int *
*vettore[0] e' un int
Capisco che sembra tutto confuso.
Con un po' di pratica le cose diventano chiare (o ci si abitua alla confusione che e' la stessa cosa).
Ad es: in C questo programmino e' legittimo e funziona.
Prova a dire a cosa e' uguale b ?
- Codice:
int a, b;
int main()
{
a = 10;
b = *&*&*&*&a;
return 0;
}