问题描述: c语言程序设计题*a^=*b; *b^=*a; *a^=*b;这是一个将a,b交换的语句,但不知道为什么要在=号前面加^ , 1个回答 分类:综合 2014-10-28 问题解答: 我来补答 用到异或的运算法则:a^a=0;0^a=a;a^b=b^a;a^b^c=a^(b^c)=(a^b)^c;如题:*a=*a^*b;*b=*b^(*a^*b)=*b^*b^*a=0^*a=*a;将*a的值赋给了*b;*a=(*a^*b)^*a=*a^*a^*b=0^*b=*b;将*b的值赋给*a; 展开全文阅读