int a=1,int b=1,int=1; a=(a++)+(b++)+(c++); cout<<a<<endl; 结果是什么呀! 我认为是3 可是不是呀 是4 不知道是什么原因?知道为什么吗?
热心网友
分析一下看看把分析前我要说可能你是对的,但有时候因为编译器的不同,最后的结果也是不和我门想的一样的;你用的是C++吧,比我厉害,经过我的分析你好象错了呀,不过怎么想都是 4 呀我有两种看法但不介意你都看,1:后算a++ ;分开就是 a=(a+b+c)++ ,你应该能看出来是几把 (推荐)2:先算a++ ;这个是由于编译器有时出现的毛病, (最好不要想,这种毛病好象很少出现的,但还是有的);只能分析到这了第2个方法你可以拿a=(a++)+(a++)+(a++) 来测试,不玩了,我有睡觉了。
热心网友
diels 太强了!!!!佩 服 佩 服
热心网友
这题的关键是;a=(a++)+(b++)+(c++);cout<