-
在预编译时将宏名替换成字符串的过程称为"宏展开"(也叫宏替换)。
-
宏名一般用大写,以便于与变量区别
-
宏定义不作语法检查,只有在编译被宏展开后的源程序才会报错
-
宏定义不要行末加分号
-
#define PI 3.14
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define FUNC(a) func(a)void func(int a) {int b = a;
}int main() {double a = PI;int temp = MAX(1, 2+3);FUNC(10);return 0;
}