不用临时变量交换a,b的值(异或的方法):
异或:相同为0,不同为1
代码如下:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
// 不用临时变量交换a,b的值(异或的方法)
int main()
{
int a = 6;
int b = 2;
printf("before:a=%d,b=%d\n", a, b);
// 异或:相同为0,不同为1
a = a^b; // 建立一个临时值a = 4;
b = a^b;
a = a^b;
printf("after: a=%d,b=%d\n", a, b);
return 0;
}
图解如下:
执行结果如下:
版权声明:本文为xiaojiamide原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。