我想输入一个按位计算并交换两个变量的宏
我没有在我的程序中一次又一次地键入该代码,而是决定使用宏作为
#define swapVars(p,a,b) {p=a^b;a=^p;b=^p;}
当我在代码中使用宏时
int a = 10, b=19;
int swap_dummy = 0; //May contain anything
swapVars(swap_dummy, a, b);
printf("a = %d | b = %d", a, b);
我在更换时遇到错误。宏定义错了吗?(顺便说一句,应该是)。这种情况下正确的宏是什么?