执行下列语句后z的值是
我运行叻,输出是7或8. 括号里等价于(y-1)/(x+1)因为都是int型,结果只取整数部分4.然后乘以2将结果8赋值给z。最后自减一 如果你是直接输出(--y/++x)*z--,结果就是8因為还没有自减。如果在语句结束后输出z结果就是7,因为z--的意思就是返回当前z的值语句结束后z自减1. 补充一点:由于不同的编译器对这种算式的理解可能会不一样,所以不建议深究这种不严谨的给编译器添麻烦的写法。全部
我想多说一句这种令人费解的东西实在是讨厌,我是做软件开发的干我们这行的就没有些这种垃圾代码的,这肯定是某个老师想出来难为学生的纯属吃饱撑的没事干了全部
这主要栲察运算符的优先级问题。 括号优先级高于乘号所以首先运算括号内: 因为z--的代码是首先把z参与运算,之后才进行--操作 所以,最终结果还是8全部
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。