您的位置:首页 > 编程语言 > C语言/C++

C/C++三种交换变量的方法

2012-07-13 16:45 260 查看
//1.中间变量法。最常用的交换方法。优点是稳定,不会出错。缺点是需要借助第三方变量,时空效率不高。
void swap1(int& a,int& b)
{
int temp=a;
a=b;
b=temp;
}

//2.相互加减法。不用借助第三方变量,但是用到了加法,可能会溢出,谨慎使用。
void swap2(int& a,int& b)
{
a=a+b;//可能会溢出
b=a-b;
a=a-b;
}

//3.异或法。加了一个判断条件,消除了bug,推荐使用。
void swap3(int& a,int& b)
{
if(a^b)//如果不加这项,当不小心传入了同一个变量,就会把这个变量变成0
a^=b,b^=a,a^=b;
}
本文出自 “C小加&SunRise” 博客,请务必保留此出处http://lwxcy.blog.51cto.com/2467073/930014
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: