chapitre 2 Flashcards
Structure Récursive
Un ou plusieurs champs de la structure est un
pointeur sur elle-même.
-Ces structures requièrent généralement
l’allocation dynamique pour allouer et libérer
explicitement de la mémoire
Champs de bits
struct <nom_structure>
{
unsigned int <nom_champ1> : <nombre_de_bits> ;
unsigned int <nom_champ2> : <nombre_de_bits> ;
...
unsigned int <nom_champN> : <nombre_de_bits> ;
} ;</nombre_de_bits></nom_champN></nombre_de_bits></nom_champ2></nombre_de_bits></nom_champ1></nom_structure>
Type union
- Les unions permettent l’utilisation d’un même espace mémoire par
des données de types différents à des moments différents :
union <nom_union>
{</nom_union>
<type1> <nom_champ1> ;
<type2> <nom_champ2> ;
...
<typeN> <nom_champN> ;
} ;
</nom_champN></typeN></nom_champ2></type2></nom_champ1></type1>
Type enum
Le compilateur associe au 1er identificateur la constante 0,
au 2ème la constante 1, … et au Nème la constante N+1.
enum <nom_énumération>
{</nom_énumération>
<identificateur1> ;
<identificateur2> ;
...
<identificateurN> ;
} ;
</identificateurN></identificateur2></identificateur1>
Types synonymes
- typedef permet de définir des types nouveaux
synonymes à des types existants. - typedef ne réserve pas d’espace mémoire. Le
nom est un type ; - Syntaxe de définition :
typedef <type> <nom_de_remplacement1>,</nom_de_remplacement1></type>
<nom_de_remplacement2>,
...
<nom_de_remplacementN> ;
</nom_de_remplacementN></nom_de_remplacement2>