Cas
particulier d'un
tableau
En C, un tableau est un pointeur
vers l'adresse de début de tableau:
exemple:
int tab[5]={9,89,67,34,90};
/* tab est un pointeur vers le début du tableau
donc un pointeur vers le premier élément. */
Ainsi tab et &tab[0]
représente la même valeur (une adresse) ainsi que tab+1 et
&tab[1]; *tab et tab[0] correspondent au contenu de
l'élément 0, et *(tab + 1 ) et tab[1] au contenu de
l'élément 1.
Conséquences:
- Attention à
l'affectation, une variable de type tableau ne contient qu'une
adresse.
int* t; /* t est un
pointeur d'entier comme tab */
t = tab; /* affecte l'adresse de
tab à t */
Donc la modification de t modifie
aussi tab:
t[2] = 45;
suivant
plan