0
回答
交换两个数方法总结
华为云4核8G,高性能云服务器,免费试用   

经总结大致有以下几种方法:

1.中间变量(用得最多)

int t;

t = a;

a = b;

b = t;

 

2. 加减交换法(可能会溢出,比较糟糕的做法)

i+=j;
j=i-j;
i-=j;

 

3.异或交换法

i^=j;
j^=i;
i^=j;
或者i^=j^=i^=j;

 

4.乘除交换方(原理与2同)

i*=j;
j=i/j;
i/=j;

 

5.汇编的方法

__asm
{
  push i
  push j
  pop i
  pop j
}
利用的是先入后出、后入先出的原理


原文链接:http://blog.csdn.net/favormm/article/details/5414073
<无标签>
举报
长平狐
发帖于6年前 0回/28阅
顶部