一般交换2个变量的值是借用第三个变量
void swap(int &a,int &b){
int t;
a=t;
a=b;
b=t;
return;}
刚看到一个使用宏交换2个变量值的应用,不需借用临时变量,觉得蛮有意思的,在这里记录一下:
#define swap(a,b) { a^=b; b^=a; a^=b; }
void swap(int &a,int &b){
int t;
a=t;
a=b;
b=t;
return;}
刚看到一个使用宏交换2个变量值的应用,不需借用临时变量,觉得蛮有意思的,在这里记录一下:
#define swap(a,b) { a^=b; b^=a; a^=b; }

本文介绍了一种使用位运算进行变量值交换的方法,该方法无需借助临时变量。通过XOR异或操作实现两个变量值的互换,提供了一个新颖且高效的解决方案。





