编程时,如果碰到需要交换两个变量的值,那么习惯做法是使用一个中间变量,但是这并不是必须的; //交换 a=a^b; b=b^a; a=a^b; //此时,a和b的值已经交换了 a1=a0^b0; b1=b0^a1=b0^(a0^b0)=a0^b0^b0=a0; a2=a1^b1=(a0^b0)^a0=b0^a0^a0=b0; 可以使用这样的方法: int a,b; a=值1; b=值2; 证明: 应用的主要原理就是一个值经过同一个数的两次异或后值不变!