Preprocessor Operators

Four preprocessor-specific operators are used in the context of the #define directive (see the following list for a summary of each). The stringizing, charizing, and token-pasting operators are discussed in the next three sections. For information on the defined operator, see The #if, #elif, #else, and #endif Directives.

Operator

Action

Stringizing operator (#)

Causes the corresponding actual argument to be enclosed in double quotation marks

Charizing operator (#@)

Causes the corresponding argument to be enclosed in single quotation marks and to be treated as a character (Microsoft Specific)

Token-pasting operator (##)

Allows tokens used as actual arguments to be concatenated to form other tokens

defined operator

Simplifies the writing of compound expressions in certain macro directives

See Also

Concepts

Preprocessor Directives

Predefined Macros

C/C++ Preprocessor Reference