题目:要求编写一个函数,完成两个整型变量的交换,不得定义局部变量。
函数原型为:void swap(int &a,int &b)
楼主列出两种简单的实现方案,欢迎补充:
方案一:
void swap(int &a,int &b){
a^=b;
b^=a;
a^=b;
}
这是利用逻辑运算符实现,执行效率高,考察大家对逻辑运算的熟悉程度。
方案二:
void swap(int &a,int &b){
a+=b;
b=a-b;
a=a-b;
}
这个就是简单算术运算,大家都会的,呵呵