交换两数的另类实现
27 Mar 2013偶然发现的有趣的两位数交换代码,来玩玩~~
1。
#include <stdio.h>
#include <stdlib.h>
int main(void){
int a = 1;
int b = 2;
//a= 00000001
//b= 00000010
//(a^=b)=00000011
//(b^=a)=00000001
//(a^=b)=00000010
a ^= b;
b ^= a;
a ^= b;
printf("a=%d b=%d\n", a,b);
system("PAUSE");
return 0;
}
2。
#include <stdio.h>
void main()
{
int a = 1;
int b = 2;
b=a+b;
a=b-a;
b=b-a;
printf("a=%d,b=%d\n",a,b);
getchar();
}