defined
Remonter à Présentation de la compilation conditionnelle - Index
Syntaxe
defined identifier defined ( identifier )
Description
Utilisez l'opérateur defined pour tester si un identificateur a été préalablement défini avec #define.
defined [(] identifier [)]
L'opérateur defined est uniquement valide dans les expressions #if et #elif.
#if defined identifier #elif defined ( identifier )
Ici, l'expression de constante defined vaut 1 (true) si un identifier précédemment défini n'a pas été indéfini (avec #undefPndSnundef). Sinon, il vaut 0 (false).
La directive defined exécute la même fonction que #ifdef.
#if defined(mysym)
est identique à
#ifdef mysym
L'avantage est que vous pouvez utiliser defined plusieurs fois dans une expression complexe suivant la directive #if. Par exemple,
#if defined(mysym) && !defined(yoursym)