黑马程序员技术交流社区

标题: 求解释此种实现两个变量值交换的原理 [打印本页]

作者: 杨远鹏    时间: 2015-7-20 21:22
标题: 求解释此种实现两个变量值交换的原理
a = a^b;
b = a^b;
a = a^b;

作者: 丁铭检    时间: 2015-7-20 21:33
你自己可以用笔算一下。。。
作者: yongwei    时间: 2015-7-20 21:36
同求啊,不明白为什么
作者: 陈祖杰    时间: 2015-7-20 21:47
顶               
作者: 慕名黑马生    时间: 2015-7-20 23:59
按位异或,101和100,a=a^b=001,b=a^b=101,a=a^b=100
作者: lclofty    时间: 2015-7-21 00:15
首先得明白异或的概念和特点 两个数相同为0不同为1  特点是一个数a与另一个b数异或2次 得到原数a 知道这个特点 代入上式就明白了
作者: Foreversidy夏末    时间: 2015-7-21 14:28
a = b - a;
b = b - a;
a = b + a;
作者: 我的呸    时间: 2015-7-21 16:49
交换a,b的值,首先a=a^b;所以 b=(a^b)^b=a^(b^b)=a^1=a,然后a=a^b=(a^b)^a=(a^a)^b=1^b=b 网上找的,先看看




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2