读书人

求值顺序的疑问,该怎么解决

发布时间: 2012-04-16 16:20:04 作者: rapoo

求值顺序的疑问
int i=3;
执行printf("%d,%d",i,i++)是输出时3,3。
和说好的求值顺序是自右往左已经有偏差。
然后我把上句注释掉,重新执行printf("%d,%d",i,++i),输出有成了4,4。
这下完全不懂了。求大神指点,究竟是怎么进行输出的呢。

[解决办法]
这和编译器的进栈出栈顺序有关。。。。懂了就好,不要深究
[解决办法]
求值顺序没规定
入栈顺序从右到左
[解决办法]
详细解释看帖子
http://topic.csdn.net/u/20110826/09/601ebe9c-c2ae-4d63-a4e2-506c618bb654.html

读书人网 >C++

热点推荐