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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

给定两个变量怎么不通过第三个变量交换他们的值?

3 个回复

倒序浏览
运用加减法实现
x=x+y;
y=x-y;
x=x-y;
运用
回复 使用道具 举报
运用异或运算
x=x^y;
y=x^y;
x=x^y;
回复 使用道具 举报
int a,b;
a = a^b;
b = a^b;//这句话右边的a此时已变成(a^b),所以这句话其实就是b = (a^b)^b,此时a的值就赋给了b。
a = a^b;//这句话的右边a的值还是(a^b),这句话为a = (a^b)^a,此时将b的值赋给a,完成换位
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马