题
我对此非常积极,但为了安全起见:
请问C标准保证和链条(A &&乙&& ...)进行评估左到右,并评价将尽快有一个0停下来?
为OR同样的问题。 (只要有一个1)
我能指望这对于其他C风格的语言?
这是代码安全的:
if (somePtr!=NULL && somePtr->someMember==123)
{
...
}
解决方案
是,它是保证为C,C ++和C#。这同样适用于Delphi的启用“短curcuit评价”。
这是代码的行为众多线靠这一刻。
其他提示
是,它是由C和C ++规范。
是的,你对运营C中的顺序假设是正确的,并如预期的代码段将工作。我将采取上的情况下,逐个其他“C式”的语言。
是它的作用。
我见过的人谁认为这是不明确,以及与此形式代替&&的:
if (a)
if (b)
if (c)
if (d) {
}
我个人认为这是有点丑。
不隶属于 StackOverflow