Demo1:
#include <stdio.h> int main(int argc, const char * argv[]) { //第一种方式,开发中常用 int a = 10; int b = 20; int temp;//空瓶子 temp = a; a = b; b = temp; printf("a = %d,b = %d\n",a,b); return 0; }
控制台输出:
a = 20,b = 10
Program ended with exit code: 0
Demo2:
#include <stdio.h> int main(int argc, const char * argv[]) { //第二种方式 int a = 10; int b = 20; a = b - a;//20 - 10 a = 10 b = b - a;//20 - 10 b = 10 a = b + a;//10 + 10 a = 20 printf("a = %d,b = %d\n",a,b); return 0; }
控制台输出:
a = 20,b = 10
Program ended with exit code: 0
Demo3:
#include <stdio.h> int main(int argc, const char * argv[]) { //第三种方式 int a = 10; int b = 20; a = a ^ b; //a = 10 ^ 20; b = a ^ b; //b = 10 ^ 20 ^ 20; b = 10 a = a ^ b; //a = 10 ^ 20 ^ 10; a = 20 printf("a = %d,b = %d\n",a,b); return 0; }
控制台输出:
a = 20,b = 10
Program ended with exit code: 0
原文:http://www.cnblogs.com/M-Y-P/p/5013949.html