-
un exemple vaut mieux qu’un long discours :
struct personne_s {
char nom[MAX_NOM];
char prenom[MAX_NOM];
int age;
long long noss;
};
- même exemple avec une définition de type :
typedef struct {
char nom[MAX_NOM];
char prenom[MAX_NOM];
int age;
long long noss;
} personne_t;
- l’initialisation peut se faire en séquence :
struct personne_s moi={"REDON","Xavier",45,1681086424242};
personne_t encore=moi;
- l’initialisation peut se faire en désordre :
struct personne_s moi={.noss=1681086424242,.nom="REDON"};
personne_t encore=moi;
- la copie de structure est possible ;
- l’accès est possible via l’opérateur . :
struct personne_s moi;
bzero(&moi,sizeof moi);
strcpy(moi.nom,"REDON");
moi.noss=1681086424242;
- l’accès est possible via l’opérateur -> :
struct personne_s *moi=calloc(1,sizeof moi);
strcpy(moi->nom,"REDON"); // equivalent strcpy((*moi).nom,"REDON");
moi->noss=1681086424242; // equivalent (*moi).noss=1681086424242;