交换a、b的值之前一直用再创建一个c作为中间变量交换,今天学到了个新的方法:异或的方法!
a = 甲;b = 乙;
a = a ^ b; (1)
b = a ^ b; (2)
a = a ^ b; (3)
这就完成了!是不是十分之简单!
详解:
1)a = 甲 ^ 乙;b = 乙;
2)b = 甲 ^ 乙;b = 甲 ^ 乙 ^ 乙=甲
3)a = 甲 ^ 乙 ^ 甲 = 乙;b = 甲;
(亦或操作与顺序无关;a与b需要是凉快独立的区域,内存不为同一块)
完成!牛皮!
交换a、b的值之前一直用再创建一个c作为中间变量交换,今天学到了个新的方法:异或的方法!
a = 甲;b = 乙;
a = a ^ b; (1)
b = a ^ b; (2)
a = a ^ b; (3)
这就完成了!是不是十分之简单!
详解:
1)a = 甲 ^ 乙;b = 乙;
2)b = 甲 ^ 乙;b = 甲 ^ 乙 ^ 乙=甲
3)a = 甲 ^ 乙 ^ 甲 = 乙;b = 甲;
(亦或操作与顺序无关;a与b需要是凉快独立的区域,内存不为同一块)
完成!牛皮!