标题:[求助]k++和++k在vc6和vc.net里面的计算结果不同的原因
只看楼主
johan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-3-17
 问题点数:0 回复次数:4 
[求助]k++和++k在vc6和vc.net里面的计算结果不同的原因

请哪位大虾解释一下下面语句的结果为何不同。

#include <iostream>
using namespace std;
int main()
{
int k=2;
int val =0;
val=(++k)+(++k)+(k++)+(++k) +(++k) +(++k) +(++k) +(k++)+(k++)+(k++);
cout<<val<<endl;
return 0;
}

在vc6显示62 在vc.net显示80。




/////////////////////////////////////////////////////////////////////////

[此贴子已经被作者于2007-4-8 22:25:02编辑过]

搜索更多相关主题的帖子: 结果 
2007-04-08 20:25
johan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-3-17
得分:0 

晕死 没人知道吗?

2007-04-09 10:30
cz522321
Rank: 1
等 级:禁止访问
威 望:2
帖 子:569
专家分:5
注 册:2006-3-13
得分:0 
前者编译时从左往右,后者从右往左编译.

2007-04-09 17:27
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
得分:0 
6.0编译好像有问题的
你的那种顺序正确结果应该是61
.NET里80应该和编译顺序有关,优先级问题

当你开始怀疑自己时,说明你已经失去了判断力
2007-04-09 17:52
johan
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-3-17
得分:0 

谢谢两位大虾

2007-04-10 10:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-130203-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.143587 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved