黑马程序员技术交流社区

标题: 看到的一个小问题? [打印本页]

作者: 冯盼    时间: 2012-12-3 13:20
标题: 看到的一个小问题?
本帖最后由 冯盼 于 2012-12-3 19:11 编辑

int a = 3,b=6;
不使用第三个变量,交换a,b的值?
作者: 睡中忘了的睡    时间: 2012-12-3 13:38
       
                int a = 3,b=6;               
                a=a+b;//a=3+6=9
                b=a-b;//b=9-6=3=a
                a=a-b;//a=9-3=6=b
作者: 付莹    时间: 2012-12-3 15:37
本帖最后由 付莹 于 2012-12-3 15:43 编辑

//异或操作
a=a^b;
b=a^b;
a=a^b;

a =  011=3;
b =  110=6;
a =a ^ b = 101;
b=a^b=(a^b)^b=101^110=011=3;
a=a^b=(a^b)^b=(a^b)^(a^b)^b=101^011=110=6;




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