第一种是最简单的方法,引入一个变量。
int main()
{
int a = 10;
int b = 20;
int temp = 0;
printf("a = %d,b = %d\n",a,b);
temp = a;
a = b;
b = temp;
printf("a = %d,b = %d\n", a, b);
return 0;
}
第二种方法是在不引入变量的情况下,利用异或
int main()
{
int a = 2;//2的二进制010
int b = 3;//3的二进制011
printf("a = %d,b = %d\n", a, b);
a = a^b; //a现在是001
b = a^b; //b现在是010即为开始时的a
a = a^b; //a现在为011即为开始时的b
printf("a = %d,b = %d\n", a, b);
}