int x=1;x++;printf(“%d/n”,x)是应该输出x的值还是x+1的值

如题所述

第1个回答  2016-09-24
输出x的值,但是x此时已经是2了,因为x=x+1追问

后缀的++不应该是x放入后面的运算吗

追答

X++等价于X=X+1

追问

那和++x的区别呢

追答

单独一条语句,++x和x++没有区别,因为就这一个运算,自然没有先后之分
但是如果有多个运算,比如:
x=1
y=++x+2意思是x先递增1,再加上2,再赋值给y,y的值是4;
y=(x++)+2的意思是x加上2赋值给y,x再递增1,y的值是3。

本回答被提问者采纳
第2个回答  2016-09-24
这种问题 其实你可以采用反汇编的形式来思考。
每个;号都代表依次执行。 想
x=1 ; 就是说把1入栈给x;
X++; 意思是 x账内的数据+1;
printf 打印出X
这个时候应该是2追问

后缀的++不应该是x放入后面的运算吗

相关了解……

你可能感兴趣的内容

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