C语言若干语法分析 (一)
时间:2010-10-14 来源:syukayo
C语法分析 (一)
<一>. do {} while(0)的作用
用这个不会导致性能降低,反而更有效.
a. 分号问题. 用{} 包含多语句与用do {} while(0)的区别所在:
#define foo() { x = 1; y = x; } |
b. if语句问题,会匹配最近的else. 比如
#define ABC(x) if (x) dosomething() |
c. 空的宏定义避免warning. #define foo() do {} while(0).
什么都不做,但是避免某些编译器发出警告信息.
d. 存在一个独立的block,可以进行多语句实现,定义变量等.
#define foo() do1(); \
if (x) |
相关阅读 更多 +