求值顺序
← 返回 MOC | ← 主页
这是一个非常经典的**“求生陷阱”**。如果你在面试或者考试中遇到这个题目,最标准的答案不是“先”或“后”,而是:
这是“未定义行为”(Undefined Behavior),绝对不能这么写!
- 答案: 不确定。在不同环境下结果可能不同。
- 专业术语: 在同一个序列点之间,对同一个变量进行了一次修改且多次访问,属于 未定义行为 。
- 金律: 永远不要在同一个表达式中让同一个变量既出现在自增/自减符号(
++,--)旁,又出现在其他地方。
另外在运算||和&&时,会先算左边的判断一下是否继续,然后可能再算右边