星辰大海不退缩 发表于 2023-12-18 10:00

宏定义防止使用时错误

宏定义防止使用时错误用小括号包含。
例如:

1#define ADD(a,b) (a+b)

用do{}while(0)语句包含多语句防止错误,例如:

1#difne DO(a,b) a+b;\
2a++;

应用时:

1if(….)
2DO(a,b); //产生错误
3else

解决方法:

1#define DO(a,b) do{a+b;\
2a++;}while(0)

Bowclad 发表于 2023-12-19 11:11

加do while

超能电子 发表于 2023-12-19 11:11

最后一种情况是最容易犯的错误。
页: [1]
查看完整版本: 宏定义防止使用时错误