当前位置:编程学习 > C/C++ >>

不用第三方变量如何交换两个整形数

 

有两个整型变量:int a=2^31-1; int b=-2^31;

方法:

1. 如果是两个较小数值的数可以通过下面的方法解决:

    a=a+b;

    b=a-b;

    a=a-b;

2. 显然,本题的变量数值过大,如果采用方法1,会产生错误,数值超出整形范围,可以采用异或运算(^)

    a=a^b;

    b=a^b;

    a=a^b;

从上可以看出,方法2是个万能的方法,方法1只适合较小数值的运算!

 

本文出自 “凉冰” 博客

补充:软件开发 , C语言 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,