| description |
Learn more about: Preprocessor operators |
| title |
Preprocessor operators |
| ms.date |
08/29/2019 |
| helpviewer_keywords |
preprocessor operators |
operators [C++], preprocessor |
|
| ms.assetid |
884126d1-0ce2-48b6-9e06-8a2d7c4a9656 |
Four preprocessor-specific operators are used in the context of the #define directive. See the following table 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 |
Preprocessor directives
Predefined macros
c/c++ preprocessor reference