c语言中:++a+c+++b是如何结合的

答案为什么是++a+(c++)+b?... 答案为什么是++a+(c++)+b? 展开
 我来答
该问答中所提及的号码未经验证,请注意甄别。
百度网友b452582
2010-10-12 · TA获得超过2581个赞
知道小有建树答主
回答量:953
采纳率:100%
帮助的人:400万
展开全部
这个问题在估计不同的系统中是不同的,你自己最好在自己的系统里试一试,
Turbo C 2.0中是 (++a)+ (c++)+ b
main()
{ int a=0,b=0,c=0,d;
d=++a+c+++b;
printf("%d %d %d %d",a,b,c,d);
}
输出的结果 1 0 1 1
所以显然是: 第一步:做++a; 在turbo C中前缀单目运算优先于后缀
第二步 取单目运算的结果做表达式运算对象:1(a) 0(c)
第三步 做 c++
第四步 做表达式计算 1+0+b ,其中b的内容为0
最终计算结果为 1
输出结果为: 1 0 1 1
b的内容始终是0
铁小宫H
2010-10-12 · 超过13用户采纳过TA的回答
知道答主
回答量:73
采纳率:100%
帮助的人:24.8万
展开全部
悲哀!c语言并没有说怎么办的,而是不同的编译器不同的结果的,这就是二级c语言的垃圾题目,在vc6.0中就是这个结果的,可是tc2.0就不是的了,这个问题你就死记住吧,记住,自己别写这样的代码的!想知道究竟为什么联系我:510733540
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
glafyq
2010-10-12
知道答主
回答量:9
采纳率:0%
帮助的人:1.4万
展开全部
a++,c++,然后求a+b+c的值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-10-12
展开全部
(++a)+c+(++b)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式