cpp.info: Undefining
Go forward to Redefining
Go backward to Concatenation
Go up to Macros
Go to the top op cpp
Undefining Macros
To "undefine" a macro means to cancel its definition. This is done
with the `#undef' directive. `#undef' is followed by the macro name to
be undefined.
Like definition, undefinition occurs at a specific point in the
source file, and it applies starting from that point. The name ceases
to be a macro name, and from that point on it is treated by the
preprocessor as if it had never been a macro name.
For example,
#define FOO 4
x = FOO;
#undef FOO
x = FOO;
expands into
x = 4;
x = FOO;
In this example, `FOO' had better be a variable or function as well as
(temporarily) a macro, in order for the result of the expansion to be
valid C code.
The same form of `#undef' directive will cancel definitions with
arguments or definitions that don't expect arguments. The `#undef'
directive has no effect when used on a name not currently defined as a
macro.
Created Wed Sep 1 16:42:06 2004 on bee with info_to_html version 0.9.6.