首页 > 其他 > 详细

if else 的令人防不胜防的奇葩错误

时间:2016-05-02 22:50:18      阅读:167      评论:0      收藏:0      [点我收藏+]

if(a==t && b+c >a)  else flag=false;

这个语句乍一看没什么问题,如果a==t 成立b+c >a不成立-〉flag=false;

但是编译时出现了问题 illegal else without matching if -> else无对应的if

为什么呢?

if()后应该接一段语句,如果没有大括号,默认大括号里面只有一句,

if(a==t && b+c >a)  else flag=false;这里系统默认if(a==t && b+c >a) { else flag=false;}是这样的,系统自己会给你加大括号,此时的else无对应的if。

改成这样就ok啦

if(a==t && b+c >a) {} else flag=false;

if else 的令人防不胜防的奇葩错误

原文:http://www.cnblogs.com/greengold/p/5453197.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!