11. Pointeurs

• Définition d’un pointeur
• Opérateurs utilisés avec des pointeurs
• Pointeurs et tableaux
• Pointeurs et chaînes de caractères
• Pointeurs et structures
• Exemples et tâches

 
 

• Pointeurs et chaînes de caractères


En C/C++ la chaîne de caractères est traitée comme un tableau ayant des éléments du type
char. Le nom d’un tableau est un pointeur constant vers le premier élément du tableau. L’exemple suivant affiche une chaîne de caractères à l’aide d’un pointeur pointant le type char.
Exemple:
char str[20] = "This is a string "; char *p; p = str; // p prend l'adresse de str[0] while(*p) { cout<< *p; p++; } Il est possible de déffinir une chaîne de caractères par un pointeur pointant vers le type char. Dans ce cas la variable p n‘est pas nécessaire. char *s = "This is a string "; while(*s) { cout<< *s; s++; } En ce cas l’acquisition
char *s;
cin>> s;
est impossible / s est un pointeur/, tandis que le code suivant est correct:

char a[5];
cin>> a;

Attention: Il y a une différence quand on affiche le nom du tableau de caractères et le nom d’un tableau numérique :
char a[5]="abcd";
cout<< a; // affiche la chaîne abcd

tandis que

int y[5]={1,2,3,4,5};
cout<< y; // affiche l’adresse du y[0]