Upss
Qu’est-ce qu’un pointeur ? Un pointeur est une variable qui contient une adresse mémoire. Un pointeur est une variable spéciale qui peut contenir l'adresse d'une autre variable. Mémoire La mémoire est divisée en emplacements numérotés séquentiellement. Chaque variable réside dans un emplacement unique en mémoire, connu par son adresse. Nous avons déjà utilisé l’opérateur & pour désigner l’adresse.
1
D’une manière générale, le langage C permet de manipuler des adresses par l’intermédiaire de variables nommées « pointeur ». On définit une variable pointeur selon la syntaxe suivante: Type * nom_pointeur ; Une telle définition, dans sa structure correspond à la définition d’une variable. Elle contient le nom de la variable à définir, qui est dans l’instruction précédente: nom_pointeur Ainsi que le type de cette variable pointeur, représenter par la spécification : Type.
2
Interprétation
L’indication de type comporte un nouveau élément, l’opérateur * que vous connaissez déjà en tant qu’opérateur de multiplication. Cependant dans la définition d’une variable pointeur, cet opérateur a une signification différente « est un pointeur vers ». Remarque : Les pointeurs et les noms de variables ont le même rôle: Ils donnent accès à un emplacement dans la mémoire interne de l'ordinateur. Un pointeur est une variable qui peut 'pointer' sur différentes adresses. Le nom d'une variable reste toujours lié à la même adresse.
3 4
Une définition telle que :
int *P ;
peut donc interprétée comme: « la variable P est un pointeur vers une donnée de type int » Ce qui équivaut à : « la variable définie P a le type int * » Autre périphrase équivalente : « la variable définie P peut mémoriser l’adresse d’une donnée de type int ». int A=10 ; P=&A ; /* P pointe sur A */
Interprétation
Pour accéder aux données stockées à l’adresse d’un pointeur, on utilise l’opérateur d’indirection *. Il faut toujours initialiser l’ensemble des pointeurs d’un