Structures sans sélecteur et typedef
Remonter à Structures - Index
Si vous n'indiquez pas de sélecteur de structure, vous obtenez une structure sans sélecteur. Ce genre de structure est utilisable pour attribuer à une liste d'identificateurs (délimitée par des virgules) le type structure donné (ou un type dérivé), mais il n'est pas possible de déclarer ailleurs d'autres éléments de ce type :
struct { ... } s, *ps, arrs[10]; // structure sans sélecteur
Vous pouvez créer un typedef au moment de la déclaration d'une structure, avec ou sans sélecteur :
typedef struct mystruct { ... } MYSTRUCT;
MYSTRUCT s, *ps, arrs[10]; // identique à struct mystruct s, etc.
typedef struct { ... } YRSTRUCT; // pas de sélecteur
YRSTRUCT y, *yp, arry[20];
Il n'est généralement pas nécessaire d'utiliser à la fois un sélecteur et typedef : l'un ou l'autre suffit dans les déclarations de structure.
Les membres d'unions et de structures sans sélecteur sont ignorés durant l'initialisation.