C和C++预处理

主要总结几点容易出错的:

1. #define ADD(a,b)  a+b  此处就很容易在后续引用中出现错误,例如:ADD(3,4)*ADD(5,6)  等价于 3+4*5+6,宏定义只是简单的替换,所以此处很明显不符合要求,正确宏定义为 #define ADD(a,b) ((a)+(b))  ,把a和b变量也用(),是因为如下:#define MUL(a,b) a*b  后续引用 MUL(3+4, 5+6) 很明显此处一定要把a和b变量都用()才能符合要求。

2.可以在编译的同时给程序中的变量定义如:gcc  -D MAX=10 demo.c MAX就是程序中为定义的变量 

你可能感兴趣的:(c语言)