C++ Pointeurs vs tableaux
Les pointeurs et les tableaux sont étroitement liés. En fait, les pointeurs et les tableaux sont interchangeables dans de nombreux cas. Par exemple, un pointeur vers le début d'un tableau peut accéder au tableau en utilisant l'arithmétique des pointeurs ou l'indexation de tableau. Considérez le programme suivant :
Exemple
Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :
var[0]的内存地址为 0x7fff59707adc var[0] 的值为 10 var[1]的内存地址为 0x7fff59707ae0 var[1] 的值为 100 var[2]的内存地址为 0x7fff59707ae4 var[2] 的值为 200
Cependant, les pointeurs et les tableaux ne sont pas complètement interchangeables. Par exemple, considérez le programme suivant :
Exemple
:
Comme un nom de tableau correspond à une constante pointeur, tant que la valeur du tableau n'est pas modifiée, les expressions sous forme de pointeur peuvent toujours être utilisées. Par exemple, l'instruction suivante est valide et affecte 500 à var
*(var + 2) = 500;
L'instruction ci-dessus est valide et se compile avec succès car var n'a pas été modifiée.
autres extensions