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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 非洲小孩 中级黑马   /  2016-4-23 08:55  /  1129 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

入学考试的复习
常规的方法就是设置一个第三方变量
int  a,b,temp;
temp = a;
a = b;
b = temp;


如果不允许设置第三方变量怎么办?

int a,b;
a = a + b;
b = a - b;
a = a - b;
这是昨天复习学的,打一下当心忘记了

10 个回复

倒序浏览
按位异或可以交换变量。a = a ^ b; b = a ^ b; a = a ^ b;
回复 使用道具 举报
两数相加再相减比较好理解,按位异或不太好理解
回复 使用道具 举报
可以的兄弟···
回复 使用道具 举报
两数相加不是说最好别用了么,如果两数之和超过了int的范围,需要用到强转,而强转容易丢失数据。所以^这个是面试必备啊
回复 使用道具 举报
int a,b,temp;   
回复 使用道具 举报
p = a;    a = b;      b =  temp;   int  a,b;  a = a + b;    b = a - b; a = a - b;
回复 使用道具 举报
可以可以,加油
回复 使用道具 举报
很不错、
回复 使用道具 举报
我刚学了这个不就,其实用临时变量是企业开发时推荐的用法,简单方便明了,还有就是用亦或的方法,那个不好理解,但听说面试都是用亦或.这个你了解一下就可以了
回复 使用道具 举报
还有一个用异或的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马