目录 1. 基本形式 2. 宏展开中的陷阱 3. #undef 4. 宏参数.# 和 ## 1. 基本形式 #define name replacement_text 通常情况下,#define 指令占一行,替换文本是 define 指令行尾部的所有剩余部分,但也可以把一个较长的宏定义分成若干行,这时需要在待续的行末尾加上一个反斜杠符 ``. 宏定义也可以带参数,这样可以对不同的宏调用使用不同的替换文本.例: #define max(A, B) ((A) > (B) ? (A) : (B)) 2…