Définition de type structure

Lorsqu'on donne un nom à un type structure par typedef, l'utilisation est beaucoup plus aisée. En effet, si on déclare :

struct personne
   {
   ...
   }
les déclarations de variables se feront par :

struct personne p1,p2;
alors que si on déclare :

typedef struct
   {
   ...
   } PERSONNE;
les déclarations de variables se feront par :

PERSONNE p1,p2;
on voit que la seconde méthode permet d'éviter d'avoir à répéter struct.

De la même manière, en ce qui concerne les pointeurs, il est plus difficile d'écrire et de comprendre :

struct personne
   {
   ...
   };
struct personne *p1,*p2; /*   p1 et p2 pointeurs vers des struct   */
que la version suivante qui donne un nom parlant au type pointeur vers struct :
typedef struct
   {
   ...
   } PERSONNE;

/* P_PERSONNE type pointeur vers struct */
typedef PERSONNE *P_PERSONNE;

/* p1 et p2 pointeurs vers des struct   */
P_PERSONNE p1, p2;



Matthieu Moy 2017-02-08