交换两个变量的值 不使用第三个变量,如何不用第三个变量交换两个变量的值
方法1:
int main()
{
int a=8;
int b=4;
printf(before:a=%d b=%d\n ,a,b);
a=a b;
b=a-b;
a=a-b;
printf(after:a=%d b=%d\n ,a,b);
返回0;
}
方法二:
int main()
{
int a=8;
int b=4;
printf(before:a=%d b=%d\n ,a,b);
a=a ^ b;
b=a ^ b;
a=a ^ b;
printf(after:a=%d b=%d\n ,a,b);
返回0;
}
是按位或,8的二进制是1000,4的二进制是0100。
第一步:A=1000 0100=1100
第二步:B=1100 0100=1000
第三步:A=1100 1000=0100
原创作品来自开通本页面的博主,
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。