slan的学习笔记

天马行空的想,脚踏实地的做!

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  27 随笔 :: 0 文章 :: 52 评论 :: 2 引用

一个很简单的程序,请大家解释下结果的原因:

#i nclude<iostream>
using namespace std;
void main()
{
  int a=5;
  cout<<a<<a--<<a;
}

大家觉得结果是多少呢?为什么?

posted on 2006-11-08 14:24 易来 阅读(237) 评论(12) 编辑 收藏

评论

#1楼 2006-11-10 10:14 沐枫      
请指定操作系统以及编译器,和相应具体的版本号,否则无解。
建议到csdn论坛搜索一下。
 回复 引用 查看   

操作系统:windows 2000 serve
VC++6.0
 回复 引用   

这个问题也太easy了吧,不就是554??难道还有什么陷阱不成。。。
 回复 引用 查看   

@phinecos(洞庭散人)
那你去运行一下程序看下结果就知道了!
 回复 引用   

#5楼 2006-11-11 19:59 沐枫      
vc6.0啊,我手上没有。只有vc2005.
其实这种问题,自已要在对应的编译器上运行就知道了。
这是编译器相关的。不同编译器可能有不同结果。

这种问题几乎每周都会有人问一次。
 回复 引用 查看   

Dev c++试了下,是554,没VC6.0,谁报下结果呀
 回复 引用 查看   

Dev c++试了下,是554,没VC6.0,谁报下结果呀
 回复 引用 查看   

Dev c++试了下,是554,没VC6.0,谁报下结果呀
 回复 引用 查看   

@phinecos(洞庭散人)
我记得结果是455
 回复 引用   

#10楼 2006-11-16 13:21 乱码      
看看是怎么执行的
是从左到右还是从右到左
不同的编译器可能不同
 回复 引用 查看   

#11楼 2007-05-26 02:46 fd[未注册用户]
455
 回复 引用   

#12楼 2007-06-20 13:16 长弓[未注册用户]
我运行了
在Win xp,VC6.0下运行,
结果是:4,5,5

但我不能解释是为什么
 回复 引用