为何JavaScript与C中a ^= b ^= a ^= b异或表达式执行结果不同?
同一异或赋值表达式在JavaScript与C中的不同执行结果
测试表达式为 a ^= b ^= a ^= b,变量初始值为 a = 3、b = 5:
- 在JavaScript环境执行后,最终值为
a = 0、b = 5 - 在C语言环境执行后,变量完成值交换,最终为
a = 5、b = 3
浏览器中JS执行结果:
C语言在线编辑器执行结果:
内容的提问来源于stack exchange,提问作者Aneesh Mohanan
相关产品推荐
相关产品推荐

