Sous-sections
Les constructeurs hétérogènes permettent de définir des objets
renfermant des entités de nature différente.
Il en existe 3 :
- les structures,
- les champs de bits,
- les unions.
Les structures permettent de regrouper des objets dont les
types peuvent être différents.
- Syntaxe
-
struct [ nom ] {
< liste de declarations >
};
Les objets regroupés sont les membres ou composantes
de la structure les contenant.
Remarques
- Les structures sont un exemple de définition de nouveaux types.
- Lors de la définition d'une structure des objets peuvent être
déclarés et seront du type associé à celle-ci.
- Ils peuvent être déclarés ultérieurement mais dans ce cas la structure
devra nécessairement avoir un nom et struct nom est
le nom du type associé.
- La taille d'une structure est au moins égale à la somme des
tailles de ses membres du fait d'éventuels alignements mémoires. L'opérateur
sizeof permet d'en connaître la taille.
struct complexe { float x; float y; };
struct complexe Z,*Y;
struct cellule {
char **p;
int *t[10];
int (*f)();
};
struct cellule cel1, *cel2;
Pr. Marc BUFFAT
buffat@ufrmeca.univ-lyon1.fr
2004-12-01