C语言陷阱「语法陷阱 之 “悬挂”else引发的问题」

C语言陷阱【"悬挂"else引发的问题】

"悬挂"else引发的问题

在C语言程序中,else始终与同一对括号内最近的未匹配的if结合,括号使用不当,会造成程序实际执行效果的差错。

如:

该程序的本意是,当x等于0,且 y等于0,计算z=x-y,当x不等于0,计算z=x+y,但因为else始终与同一对括号内最近的未匹配的if结合,该程序的实际执行效果是:

Else 与if(y==0)中的if结合,造成z=x+y,被直接跳过。

按照程序执行的本意,该程序应该写为:

程序执行结果:

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();