码迷,mamicode.com
首页 > 其他好文 > 详细

两个变量进行交换

时间:2014-07-30 23:47:55      阅读:382      评论:0      收藏:0      [点我收藏+]

标签:代码   ar   算法   ash   c   转换   变量   ld   

int iVar=18;
int jVar=10;

cout<<"|——————————————————|"<<endl;
cout<<"|            转换前iVar="<<iVar<<"           |"<<endl;
cout<<"|            转换前jVar="<<jVar<<"           |"<<endl;
cout<<"|------------------------------------|"<<endl;
iVar=iVar^jVar;
jVar=iVar^jVar;
iVar=jVar^iVar;
cout<<"|——————————————————|"<<endl;
cout<<"|            转换后iVar="<<iVar<<"           |"<<endl;
cout<<"|            转换后jVar="<<jVar<<"           |"<<endl;
cout<<"|------------------------------------|"<<endl;

说明:一般我们交换的时候一般都是用三个变量进行交换,然而对于俩个变量进行交换了解可能较少,该段代码

主要用到了异或运算“^”,该算法的功能就是对于两个2进制数相同为0,相异为1.x=x^y;y=x^y=x^y^y;

x=y^x=x^y^y^x^y;

两个变量进行交换,布布扣,bubuko.com

两个变量进行交换

标签:代码   ar   算法   ash   c   转换   变量   ld   

原文地址:http://www.cnblogs.com/right0712/p/3879386.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!