方法一 加减运算:
{
int a = 3; int b = 23; cout<< "a="<<a<<endl; cout<< "b="<<b<<endl; a = a+b; b = a-b; a = a-b; cout<< "a="<<a<<endl; cout<< "b="<<b<<endl;
}
方法二: 异或
异或运算符^也称XOR运算符,它的规则是若参加运算的两个二进位同号,则结果为0(假);异号为1(真)。即0 ^ 0 = 0, 0 ^ 1 = 1, 1 ^ 0 = 1, 1 ^ 1 = 0。
{ int a = 2, b = 6; a = a ^ b; b = b ^ a; a = a ^ b; printf("a = %d b = %d/n", a, b); }
总结 :其原则是,通过一个可逆运算,将 a和b运算的结果赋值给其中一个,而另一个还是原值,再通过可逆运算,反推。
参考:http://blog.csdn.net/lpt19832003/article/details/5334688