一、define宏定义表达式
1、宏函数被调用时是以实参代替形参,而不是“值传递”
#define SUM(x) (x)+(x)
如果x的值为5*3,而代码又写成SUM(x)*SUM(x),则替换后变成(5*3)+(5*3)*(5*3)+(5*3),显然错了!所以最外层的括号最好别省略,应定义为#define SUM(x) ((x)+(x))
二、条件编译
一、define宏定义表达式
1、宏函数被调用时是以实参代替形参,而不是“值传递”
#define SUM(x) (x)+(x)
如果x的值为5*3,而代码又写成SUM(x)*SUM(x),则替换后变成(5*3)+(5*3)*(5*3)+(5*3),显然错了!所以最外层的括号最好别省略,应定义为#define SUM(x) ((x)+(x))
二、条件编译