现在的位置: 首页 > 综合 > 正文

c陷阱与缺陷总结-”悬挂“else

2017年12月15日 ⁄ 综合 ⁄ 共 155字 ⁄ 字号 评论关闭
考虑下面程序片段:
if (x == 0)
    if (y == 0) error();
else
{
     z = x + y;
     f(&z);
}

C语言有这样的规则,else始终与同一对括号内最近的未匹配的 if 结合。

那么上述的代码逻辑等于下面:

if (x == 0)
{
    if (y == 0)
        error();
    else
    {
         z = x + y;
         f(&z);
     }
}

你的代码逻辑是这样吗?

抱歉!评论已关闭.