Next: Arithmétique des pointeurs
Up: Les pointeurs
Previous: Les pointeurs
Un pointeur se distingue des variables ordinaires :
- Il est défini différemment des autres variables.
- Il n'accepte que les opérateurs arithmétiques +, -, =.
- Il ne peut pas être confondu avec les types de donnés
(int, char et float) sans conversion de type explicite (cast) :
char car ;
int i=257, *p_int ;
car=i ; // car vaut 1
if (i == p_int) // ((int *) i)==p_int
//declenche une erreur de compilation
Pour assurer un maximum de sécurité, une variable pointeur ne fait
toujours référence qu'à un objet d'un type précis : pointeur
d'entiers, pointeurs de caractères,...
int main(void) {
int i,j,k ;
int *pi ;
i=3 ;
pi=&j ;
j=i ;
k=*pi ;
}
- Avec l'opérateur &, l'adresse de la variable est affecté au pointeur.
- avec l'opérateur *, il est possible d'accéder au contenu de la variable
par l'intermédiaire du pointeur.