新微赢技术网
标题:
[讨论]cout 的一个奇怪而有趣的问题,怎么想都想不通,不应该呀......
[打印本页]
作者:
ぁ贪ā.翫?
时间:
2009-11-3 00:58
标题:
[讨论]cout 的一个奇怪而有趣的问题,怎么想都想不通,不应该呀......
代码如下:
#include <iostream>
using namespace std;
int main()
{
int x=5;
cout<<x<<x++<<x<<endl;
return 0;
}
程序非常之简单,大家一看就能得出结果 556
但是.....
如果你考下去运行一下,会发现,答案是 655 !!!!
大家说奇怪不奇怪?
仔细分析一下,不应该呀......
我现在真是苦笑不得
哪位高人能指点一下
作者:
为你执著
时间:
2009-11-3 00:58
gcc下编译还是556,这样似乎更贴近"大家一看"的正确结果。
不是cout的问题,而是你写法问题,这要看编译器怎么去解析。
不提倡这种给编译器找麻烦的写法。
作者:
┈ㄝai〾噯儿
时间:
2009-11-3 00:58
通过我不断调试,终于搞明白了,
原来在VC++6.0的环境下,
cout中的计算是从右向左的,输出是从左向右的.
作者:
妈妈猪的一天
时间:
2009-11-3 00:58
给编译器找麻烦的写法
作者:
老子xin坏
时间:
2009-11-3 00:58
以下是引用冰的热度在2007-9-9 17:41:04的发言:
通过我不断调试,终于搞明白了,
原来在VC++6.0的环境下,
cout中的计算是从右向左的,输出是从左向右的.
好像是这个样子
作者:
︶ㄣ⒏懂緈諨
时间:
2009-11-3 00:58
有意识,呵呵!!
作者:
女人请自重
时间:
2009-11-3 00:58
又学到一点!!呵呵谢谢
作者:
逍遥◆爱你
时间:
2009-11-3 00:58
这种做法没有太多的意义!
作者:
忧郁侠客
时间:
2009-11-3 00:58
呵呵!每天进步一点点!!谢谢!
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2