
C++ 菜鸟问题
intx=5,n=5;x+=n+++x;printf("x=%d\nn=%d\n",x,n);结果:x=15n=6请高人帮我解释一下怎么计算的。...
int x=5,n=5;
x+=n+++x;
printf("x=%d\nn=%d\n",x,n);
结果:x=15 n=6
请高人帮我解释一下怎么计算的。 展开
x+=n+++x;
printf("x=%d\nn=%d\n",x,n);
结果:x=15 n=6
请高人帮我解释一下怎么计算的。 展开
展开全部
x += ( (n++) + x) 其中+=是赋值加运算,也就是
x = x + ( (n++) + x ) 其中n++是后自加运算,也就是进行了下一步运算之后再自加,也就是
x = x + ( n + x); n = n + 1; 第一个算式运算玩之后,x的值是15,第二个算式后,n的值是6
x = x + ( (n++) + x ) 其中n++是后自加运算,也就是进行了下一步运算之后再自加,也就是
x = x + ( n + x); n = n + 1; 第一个算式运算玩之后,x的值是15,第二个算式后,n的值是6
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x+=n+++x;
x=x+(n++)+x=5+5+5;
n=6
后缀++是先返回原数值再++ ,
所以n++是返回5
x=x+(n++)+x=5+5+5;
n=6
后缀++是先返回原数值再++ ,
所以n++是返回5
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这句x+=n+++x;
相当于x=x+((n++)+x);n用完变6,x等于5+((5)+5)=15
像你那样写,别说我们读者吃力,编译器都怕会乱掉。
相当于x=x+((n++)+x);n用完变6,x等于5+((5)+5)=15
像你那样写,别说我们读者吃力,编译器都怕会乱掉。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x +=n+++x;
x += (n++) + x
所以n = 6;
但是在执行这一语句时,n仍然是5, 执行完了才为6; 即 x = 15, n = 6
x += (n++) + x
所以n = 6;
但是在执行这一语句时,n仍然是5, 执行完了才为6; 即 x = 15, n = 6
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询