Même si elles ne font pas vraiment partie du langage C à proprement parler, puisqu'elles appartiennent au préprocesseur, les macros sont des outils qui peuvent s'avérer fort pratiques.
Une macro est l'association entre un symbole (un nom) et une définition. Elle se définit ainsi :
#define NOM definition
où NOM est n'importe quel identifiant valide en C (même un mot réservé comme for, return), mais on préfère souvent se limiter à des majuscules éventuellement séparées par des underscores. definition peut contenir n'importe quelle séquence (éventuellement vide) de code C valide.
Les macros dont la définition est vide sont surtout utilisées pour permettre l'inclusion optionnelle de code via l'utilisation des primitives #ifdef / #ifndef.
On utilise souvent des macros avec des définitions vides pour créer des « include guards ». Il s'agit de la séquence suivante :
#ifndef FICHIER_H
#define FICHIER_H
Ce qui garantit qu'une portion de code n'est pas incluse plus d'une fois lors d'une...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première