【发布时间】:2014-04-07 16:14:48
【问题描述】:
为什么第二行
int i=-3, j=2, k=0, m;
m = ++i && ++j || ++k;
在++j 之后终止并忽略++k ?
我知道前半部分是 TRUE 值,并且无论以下值是什么都会返回 TRUE。但是停止执行以下工具的条件是什么?只要我们能确认最终值?
【问题讨论】:
-
stackoverflow.com/questions/3958864/… 的副本;另外,请参阅 c-faq.com/expr/shortcircuit.html 了解说明。
-
问问自己:为什么要评估它?可能是因为条件满足?
标签: c