通过使用按位异或实现不创建临时变量,交换两个数的内容
按位异或^即 1^0=1 1^1=0 0^1=1
按位异或对应位按位异或相同为0,相异为1,0和任意数按位异或为任意数
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=1,b=2;
a=a^b;//得到a,b的不同位
b=a^b;//实现1赋给b
a=a^b;//实现2赋给a
printf("a=%d b=%d\n",a,b);
system("PAUSE");
return 0;
}