鱼C论坛

 找回密码
 立即注册
查看: 2089|回复: 10

为什么这个算出来b=22???请讲一下 谢谢

[复制链接]
发表于 2014-7-11 19:08:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>

void main()

{
        int a,b;
        a=5;
        b=(++a)+(++a)+(++a);
        printf("%d\n,%d\n",a,b);
}
搞不清楚(++a)+(++a)+(++a)的含义
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-11 19:11:04 | 显示全部楼层
论坛 自己搜自增自减
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-11 19:24:55 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-11 20:53:30 | 显示全部楼层
编译器问题。。有好多人问了。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-11 21:00:18 | 显示全部楼层
钻牛角尖的问题,这个不同编译器应该有不同的处理,你自己反汇编看看就知道了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-12 13:50:20 | 显示全部楼层
红头发 发表于 2014-7-11 19:24
http://bbs.fishc.com/forum.php?mod=viewthread&tid=27746
此贴有详解,笑纳

谢谢   懂了                 
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-12 20:20:40 | 显示全部楼层
楼主我建议你不要问这类问题,在平台上具有不可移植性,可能计算结果不一样,你只要搞清楚i++
和 ++ i ,就可以了。。这类问题没有价值。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-13 21:10:16 | 显示全部楼层
我只想说,楼主你要学会使用C的调试工具
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-13 21:32:47 | 显示全部楼层
楼上正解!!!!!!!!!!!!!!!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-13 22:09:51 | 显示全部楼层
本帖最后由 zhoushilei 于 2014-7-13 22:35 编辑

这里是C++的一个BUG,他是先计算完所有的++A ,在计算A+A+A,就是说它完成的8+8+8,这是这个语言转化为汇编的一个特点,最好以后不要这样写代码,容易误解。这种东西没有什么高端不高端的地方,反正公司里看到你的代码这样写,就不会应聘你的。{:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-13 22:38:34 | 显示全部楼层
我稍微修正一下,这个是BUG,有时候他是先做几次++A,在做计算的,可能还会在做几次++a,一般是先做完++a,在做和的。我们的C++老师说这是编译器的BUG。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 16:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表