首页 > 代码库 > 交换两个数
交换两个数
对于给定两个数a和b,传统的方法可以通过一个临时变量t完成交换:
t=a;a=b;b=t;
如果不使用中间变量t,可以这样写:
a=a+b;b=a-b;a=a-b;
也可以使用亦或的方法:
x=x^y;y=x^y;x=x^y;
再精简一些就成了:
x^=y^=x;
如果a,b是指针类型,那么可以如下操作:
a=(int*)(b-a);b=(int*)(b-(int)a);a=(int*)(b+(int)a);
经过以上操作,a指针指向了b指针原先指向的元素,b指针指向了a指针原先指向的元素。
交换两个数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。