++i+(++i)+(++i),小弟无能,高手指点

kchai1 2005-01-15 01:20:36
今日在一帖子中看到这样一东东,
自己试着看看,感觉结果应该是9,不过答案并不是9,百思不得其解

小弟知道i++同++i有区别,不过上面的东东,想不到,高手指点一二
...全文
111 点赞 收藏 10
写回复
10 条回复
qrlvls 2005年01月15日
不同的编译器也会出现一些不同的结果
没有意义,如果有人写出这样的代码,不是为了哗众取宠就是水平太烂
回复 点赞
kchai1 2005年01月15日
看来果然是编译器的问题,不过想知道不同的编译器在处理++i+(++i)+(++i)这个时,什么地方容易出现不一致,是++还是别的什么
回复 点赞
speedfirst 2005年01月15日
这个不要再讨论了,没有任何意义。除非你要编写编译器。
回复 点赞
kchai1 2005年01月15日
(++i)+(++i)+(++i)这个操作一定是先++,然后一起++
怎么就能出来10呢,我用的是vc6.0
回复 点赞
kchai1 2005年01月15日
MuseIn(air supply * 学好Linux) 兄
孔乙己什么意思?
回复 点赞
MuseIn 2005年01月15日
呵呵。孔乙己
回复 点赞
kchai1 2005年01月15日
kugou123(酷狗)(http://www.xiaozhou.net)
你的我看了,这个我能明白,初值是0,结果是9
但是我的这个
int main(int argc, char* argv[])
{
int i=1;

printf("%d\n",(++i)+(++i)+(++i));
return 0;
}
答案不是你那种情况的12,而是10
这是不是编译器的问题
回复 点赞
kchai1 2005年01月15日
shengui1083(龟仙人)
呵呵,不是6,是10
回复 点赞
shengui1083 2005年01月15日
6?
回复 点赞
kugou123 2005年01月15日
参考:

http://blog.csdn.net/kugou123/archive/2004/08/07/68239.aspx
回复 点赞
发动态
发帖子
VC/MFC
创建于2007-09-28

7901

社区成员

42.1w+

社区内容

VC/MFC相关问题讨论
社区公告
暂无公告