#define swap(x,y) {x=x+y;y=x-y;x=x-y;}//分号+{}
#define swap(x,y) (x=x+y,y=x-y,x=x-y)//逗号+()
注:if语句,会在第一个复合语句{}处结束,导致分号;被视为空语句,从而发生错误,所以在if语句后用函数式宏注意要用逗号+括号的写法。
#define swap(x,y) {x=x+y;y=x-y;x=x-y;}//分号+{}
#define swap(x,y) (x=x+y,y=x-y,x=x-y)//逗号+()
注:if语句,会在第一个复合语句{}处结束,导致分号;被视为空语句,从而发生错误,所以在if语句后用函数式宏注意要用逗号+括号的写法。