1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include <stdio.h>
void pointeur_tableau(char (*phello)[15]) {
printf("pointeur_tableau : %s\n", (*phello)); // On déférence le pointeur pour accéder au tableau
printf("6e char du tableau : %c\n", (*phello)[6]); // 6e caractère du tableau (parenthèses essentielles, sinon
// on tente d'accéder au premier caractère du 6e tableau ! de
// 15 char à partir de l'adresse de « hello » passée
}
int main(void) {
char hello[15] = "Hello World"; // Tableau contenant la chaine "Hello World"
char *p = hello + 3; // Pointe vers l'adresse de la troisième lettre 'l'
char *tab[2] = {
hello, // Le premier élément pointe vers l'adresse de la première lettre 'H'
hello + 6 // Le second élément pointe vers l'adresse de la sixième lettre 'W'
};
pointeur_tableau(&hello); // remarque que je passe l'adresse de « hello »
printf("p : %s\n", p); // lo World
printf("tab[0] : %s\n", tab[0]); // Hello World
printf("tab[1] : %s\n", tab[1]); // World
return 0;
} |
Partager