A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 牛牛很牛 于 2016-5-24 22:53 编辑

#include <stdio.h>
int main(int argc, const char * argv[]){
    int a ,b;
    a ^= b;  //a=a^b
   b ^= a;      //b=b^(a^b)=b^a^b=b^b^a=0^a=a
    a ^= b; //a=(a^b)^a=a^b^a=a^a^b=0^b=b
    printf("%d %d\n",a,b);
}
异或法,要比引用第三个值和加减法牛逼多了
ps.还有一个乘除法,和加减法同样原理  
a = a * b;
b = a / b;
a = a / b;




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马