#undef, directive
Directive de préprocesseur qui supprime la définition actuelle d’une constante ou d’une macro précédemment définie à l’aide de la directive #define .
identificateur de #undef |
---|
Paramètres
Élément | Description |
---|---|
Identificateur |
Identificateur de la constante ou de la macro pour supprimer la définition de . Si vous ne définissez pas une macro, fournissez uniquement l’identificateur, pas la liste de paramètres. |
Notes
Vous pouvez appliquer la directive #undef à un identificateur qui n’a pas de définition précédente ; cela garantit que l’identificateur n’est pas défini. Le remplacement de macro n’est pas effectué dans les instructions #undef.
La directive #undef est généralement associée à une directive #define pour créer une région dans un programme source dans laquelle un identificateur a une signification spéciale. Par exemple, une fonction spécifique du programme source peut utiliser des constantes manifestes pour définir les valeurs spécifiques à l'environnement qui n'affectent pas le reste du programme. La directive #undef fonctionne également avec la directive [) pour contrôler la compilation conditionnelle du programme source.
Les constantes et les macros peuvent être non définies à partir de la ligne de commande à l’aide de l’option /U, suivie des identificateurs à dédéfiner. Cela équivaut à ajouter une séquence de directives #undef au début du fichier source.
Exemples
L’exemple suivant montre comment utiliser la directive #undef pour supprimer les définitions d’une constante symbolique et d’une macro.
#define WIDTH 80
#define ADD( X, Y ) (X) + (Y)
#undef WIDTH
#undef ADD