关于++的小问题

      2005-7-7 14:32
今天遇到这样一个问题
#include<iostream>
using namespace std;
int main()
    {int k=0;
    int i=5;
    k=(++i)+(++i)+(++i);
    cout<<"k="<<k<<endl;
    return 0;
    }

编译结果k=22,百思不得其解,我个人觉得是编译器得原因:

例如:(++i)+(i++)
有的编译器会解释为:
1.i'=++i
2.result=i'+i'
3.i'++
而另外一些编译器则认为:
1.i'=++i
2.i''=i++
3.result=i'+i''
我再想想吧
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}