The #define directive is typically used to associate meaningful identifiers with constants, keywords, and commonly used statements or expressions. Identifiers defined with #define that represent constants are called “manifest constants” or
“symbolic constants.” Identifiers defined with #define that represent statements or expressions are called “macros.”
This section discusses the #define directive for defining manifest constants and macros, the preprocessing operators you can use in macros, the #undef directive for removing macro and constant definitions, and the predefined macros provided in Microsoft C/C++ version 7.0.
Macros have their own name space. See topic for information on name spaces.