#include <stdio.h>
int main()
//使用按位异或操作符交换a,b 只能适用于整形
{
int a = 3;
int b = 5;
printf("交换前:a=%d b=%d\n", a, b);
a = a ^ b;
b = a ^ b; //a^b^b=a
a = a ^ b; //a^b^a=b
printf("交换后:a=%d b=%d\n", a, b);
}
不设置中间变量交换两个元素
这篇文章详细介绍了如何在C语言中利用按位异或操作符`^`实现两个整数变量a和b的交换,不涉及数据类型的转换,仅适用于整型数据。

被折叠的 条评论
为什么被折叠?



