Bonjour
J'ai quelques declarations de pointeurs que j'arrive pas a comprendre l'utilite
int ( *p1) [100];
int (*p2[6]) ();
int ( **p3[7]) ();
int ** p4[4] ();
Tout comentaire est le bienvenu
Bonjour
J'ai quelques declarations de pointeurs que j'arrive pas a comprendre l'utilite
int ( *p1) [100];
int (*p2[6]) ();
int ( **p3[7]) ();
int ** p4[4] ();
Tout comentaire est le bienvenu
p1 est un pointeur sur un tableau de 100 entiers.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 int ( *p1) [100]; int (*p2[6]) (); int ( **p3[7]) (); int ** p4[4] ();
p2 est un tableau de 6 pointeurs de fonction renvoyant un entier.
p3 est un tableau de 7 pointeur sur pointeur de fonction renvoyant un entier.
p4 est invalide.
1) Est-ce queest equivalent a
Code : Sélectionner tout - Visualiser dans une fenêtre à part int ( *p1) [100];2) Est-ce qu'il ya un cas d'utilisation ou on a besoin de declarer un tableau de pointeur dur pointeur de fonctions
Code : Sélectionner tout - Visualiser dans une fenêtre à part int * p1;
Code : Sélectionner tout - Visualiser dans une fenêtre à part int ( **p3[7]) ();
- Non. Typiquement, p1+1 n'aura pas la même valeur selon les déclarations...
- Pas à ma connaissance. Mais si j'avais besoin de faire ça, j'utiliserais des typedefs pour m'y retrouver...
Partager