defined operator | Tests whether a macro is defined |
defined( identifier ) defined identifier |
The unary operator defined( identifier ) (also written as defined identifier , without the parentheses) evaluates to 1 if identifier is a known macro name at the point of the defined operator, or if it is not known. The operator is evaluated only in the argument to an #if or #elif directive.
The behavior is undefined if the defined operator is used in any other way, or if the token defined results from macro expansion.
#define directive, #elif directive, #if directive, #ifdef directive, # ifndef directive, #undef directive