You copied the Doc URL to your clipboard.


Removes any initial definition of the specified macro.

The macro name can be either:

  • A predefined macro.

  • A macro specified using the -D option.


Not all compiler predefined macros can be undefined.

-U name



is the name of the macro to be undefined.


Specifying -Uname has the same effect as placing the text #undef name at the head of each source file.


The compiler defines and undefines macros in the following order:

  1. Compiler predefined macros.

  2. Macros defined explicitly, using -Dname .

  3. Macros explicitly undefined, using -Uname .

Was this page helpful? Yes No