全部问题 > 当前问题

a++为a本身,同理x++不应该也是x吗?

那么n=x++为什么不是n=x,而是n=x++同样可以分为两步:第一步:n=x,第二步:x=x+1?

黄庭浩 2018-12-2 10:26:25

共 1 个回答

【C语言】桦桦 2018-12-2 17:16:43

n=++x可以分为两步:第一步:x=x+1,第二步:n=x

n=x++可以分为两步:第一步:n=x,第二步:x=x+1


问题来自: a 和 a
设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是 ______ 。
A. x++;printf("%d\n",x);
B. n=++x;printf("%d\n",n);
C. ++x;printf("%d\n",x);
D. n=x++;printf("%d\n",n);
答案:D
解析:x++是先执行再加1,++x是先加1再执行 假设x的初始值是5,x++=5,输出x=6,++x=6,输出x=6,则A、B、C输出的都是6,D输出的是n,n=x++=5,所以D输出的是5。因此选D。