C语言问题:

[复制链接]
查看11 | 回复4 | 2012-2-23 14:13:55 | 显示全部楼层 |阅读模式
--a&&b++&&c--;与运算中--a就变成了0为假,表达式为假,因此后面的不参与运算++a||b--&&--c;或运算中++a又变成了真,表达式为真,因此后面的不参与运算真个变化只有a自己变化了又变回来了...
回复

使用道具 举报

千问 | 2012-2-23 14:13:55 | 显示全部楼层
--a&&b++&&c--;++a||b--&&--c;这两个句子中&&表示“与”,||表示“或”&&并列的条件中,是左结合,即从左到有的判断,只有全部条件都为真(>=1)才算正确,如果有一个错误,则说明整个句子已经错误,就不再做后面的判断,不再往后面执行。||并列的条件中,是左结合,只要有一个条件成立,则整个式子都正确,就不再往后面执行...
回复

使用道具 举报

千问 | 2012-2-23 14:13:55 | 显示全部楼层
好像应该是a=1,b=2,c=3;--a&&b++&&c--;后a=0,b=3.c=2但是&&c--和&&--c部分C没有编译运行,所以是a=1,b=2,c=3...
回复

使用道具 举报

千问 | 2012-2-23 14:13:55 | 显示全部楼层
&&运算符只要是可以得最后的结果的话,就不再继续算后面的表达式了,如--a&&b++&&c--,当--a为0时,则不再运算b++,c--了,同理,||也一样...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行