互换两个变量的值 a ^= b ^= a ^= b

交换两个变量的值 a ^ b ^ a ^ bint a 123, b 7654a ^ b ^ a ^ b谁给讲一下什么意思,a和b的值

交换两个变量的值 a ^= b ^= a ^= b
int a = 123, b = 7654;
a ^= b ^= a ^= b;

谁给讲一下什么意思,a和b的值确实交换了

[解决办法]
等价代码

C/C++ code
a^=b;b^=a;a^=b;