6

foo == 13如果为假,此代码是否具有明确定义的行为?

if (foo == 13 && ++bar > 42)
{
    ...
}
4

1 回答 1

11

是的。如果第一个条件为假,则永远不会评估第二个条件。

请参阅避免执行第二个表达式的副作用

于 2012-11-24T12:39:53.213 回答