这是一个关于C语言的问题就 是;X=Y=3;求(Y=++X-1,X,Y)和(Y=X++-1,X,Y)请各位高手给出过程和理由

这里的++X是自加两次吗

(Y=++X-1, X, Y):
先执行X=X+1=4,即++X;再进行Y=X-1=3;所以答案就是:X=4,Y=3.
(Y=X++ -1, X, Y):
先执行Y=X-1=3-1=2;接着再执行X=X+1=3+1=4;最后就是X=4,Y=2.

参考资料:我们的C语言的课本。好好看看书,就明白了!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-03-19
++X是 先加1 再运算 并不是加两次
X++是 自身值不变。运算后再加1

Y=++X-1 结果是3 (X先加1。变成4再-1)Y=X++-1 结果是2 (X当时值为3 这条过后X变成4)
第2个回答  2008-03-18
++x是就是相当于x=x+1;先给X加1,然后再用X的值
X++就是先用X的值,再给X加1。
X=3,则++X之后X=4,Y=4-1=3,
因为是逗号运算符,逗号运算符的优先级最低,所以,不管前面的是什么值,只看最后一个逗号后的值,则为表达式的值
则(Y=++X-1,X,Y)的值为3,(Y=X++-1,X,Y)的值为 2
第3个回答  2008-03-17
这是非常无聊的..
因为菜鸟才会这么用.
不同的解释器有不同的解释.安份的写吧.
第4个回答  2008-03-17
Y=++X-1=3-1=2(++x为运算后再加1)
Y=X++-1=4-1=3(x++为先加1再运算)
第5个回答  2008-03-17
晕,错了啊,++X是先将X自增1然后再取值,X++才是先取X的值运算完再自增一。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网