
有一题C语言我不懂: x=8; a=+
有一题C语言我不懂:x=8;a=++x;b=x++;c=++x;y=a+b+c;为什么y的值29,x值为11?...
有一题C语言我不懂:
x=8;
a=++x;
b=x++;
c=++x;
y=a+b+c; 为什么y的值29,x值为11? 展开
x=8;
a=++x;
b=x++;
c=++x;
y=a+b+c; 为什么y的值29,x值为11? 展开
2个回答
展开全部
a = ++x; 这是x先自加1然后把加1_之后_的结果赋给a,所以a是9,x是9
b = x++; 这是x自加1,并且把加1_之前_的结果赋给b,所以b是9,x是10
c = ++x; 这是x自加1,并且把加1_之后_的结果赋给c,所以c是11,x是11
y = a+b+c; 就是9+9+11=29
b = x++; 这是x自加1,并且把加1_之前_的结果赋给b,所以b是9,x是10
c = ++x; 这是x自加1,并且把加1_之后_的结果赋给c,所以c是11,x是11
y = a+b+c; 就是9+9+11=29
更多追问追答
追问
那b为什么不是10呢?
追答
b=x++是把x自加1之前的值给b,是加1之前,之前。重要的事说三遍,嗯。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |