c语言中,a=-1,b=1;if((++a<0)&&!(b--<=0))
展开全部
1
if
里面有两个判断语句,
如果第一个为false,不管第二个为false或者为ture,结果都为false,所以如果第一个为false,就没有必要执行第二个了,程序就是这么做的。
2
在你的判断中++a结果0.很显然0<0
是false,所以此时你整个判断语句就为false。下面即使再有N个条件也不会去判断了。
if
里面有两个判断语句,
如果第一个为false,不管第二个为false或者为ture,结果都为false,所以如果第一个为false,就没有必要执行第二个了,程序就是这么做的。
2
在你的判断中++a结果0.很显然0<0
是false,所以此时你整个判断语句就为false。下面即使再有N个条件也不会去判断了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先根据运算符优先级和结合性。((!b))||((++a)&&(++c))
然后先算!b,此时(!b)=1,为true,于是不需要算||后的内容了。因为:true||任意表达式=true。
注意,运算符优先级不代表计算优先级。
如果你把b=1
结果就是212
然后先算!b,此时(!b)=1,为true,于是不需要算||后的内容了。因为:true||任意表达式=true。
注意,运算符优先级不代表计算优先级。
如果你把b=1
结果就是212
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询