首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

小弟我了个去,为啥总考求值顺序

2012-03-23 
我了个去,为啥总考求值顺序!C/C++ codeint a,b3cout(ab++*b++)endlcout(++a*++a)endl今天去

我了个去,为啥总考求值顺序!

C/C++ code
int a,b=3;cout<<(a=b++*b++)<<endl;cout<<(++a*++a)<<endl;

今天去面试又考求值顺序,上回考求值顺序是问答题,回答:依赖求顺序,未定义行为,结果不可预测!
这回是填空的了,只好填了两个数。
在CSDN帖子看了不少,很多都提到依赖求值顺序是未定义行为。
我就不知道考这个是啥意思,汗!

[解决办法]
估计就是考你是否知道每个编译器或者系统的不同,呵呵!
[解决办法]
探讨
引用:
估计就是考你是否知道每个编译器或者系统的不同,呵呵!

问题是他只给了一段程序就啥也没了,系统没指定,编译器没指定,处理器也没指定!
除了程序就啥也没了。

[解决办法]
跟编译器有关的吧...
[解决办法]
探讨

引用:
跟编译器有关的吧...

确实
其实我觉得考问答题还可以,毕竟可以回答:依赖求值顺序,未定义行为,结果不可预测。
考填空题还不给条件,就太不厚道了。

[解决办法]
求值顺序根据不同的编译器,求值的顺序是不一样的,比如在vs2008的编译器下面,结果是这样的:
C/C++ code
int a,b=3;cout<<(a=b++*b++)<<endl;cout<<(++a*++a)<<endl; 

热点排行