#define fun(a) \{if ((a))\++a;\}#define func(a) \do{if ((a))\++a;\}若遇到判断时int b = 3;if (1) fun(b);else....上面的会出错。do{}while(0)不会出错。切记。。。