最容易的问题也是最复杂的问题,大家来看看吧!

simonwdjp 2004-10-20 10:15:12
main()
{
int a=1,s;
s=(a++)+(++a)+(++a);
printf("%d",s);
}
今天上课老师有这样一个问题,就是上述代码的结果是多少,呵呵令人吃惊的是却得到了2个不同的结果,用vc6.0编译的话结果为7,用.net编译的话结果为9。不知道为什么????
...全文
113 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
tian930 2004-10-21
  • 打赏
  • 举报
回复
呵呵~
不知道你们谁说得比较好一点!
SnakeYangNan 2004-10-21
  • 打赏
  • 举报
回复
又是"++"运算,哎...
muxiu007 2004-10-21
  • 打赏
  • 举报
回复
一点意义都没有,误导
Squall1009 2004-10-21
  • 打赏
  • 举报
回复
果然高深,但我想骂人......
yjh1982 2004-10-21
  • 打赏
  • 举报
回复
无意义
pc2s 2004-10-21
  • 打赏
  • 举报
回复
与编译器相关,不同的编译器会解释出不同计算方法,你可以编译成汇编语言,就能看到内部是如何计算的了
kobefly 2004-10-21
  • 打赏
  • 举报
回复
其实这种依赖于编译器的问题语句

尽量不要出现了拉

移植性太差
本来C语言标准里没说这些,就是行为是UNDEFINED
依赖于具体编译器的实现

搞懂这些东西呢
其实也没多大意义
知道不能这么写就好了

高手更肯定不会写这种问题语句的拉
jp1984 2004-10-21
  • 打赏
  • 举报
回复
中国的教育~
csswl 2004-10-21
  • 打赏
  • 举报
回复
同意,同意...
北极猩猩 2004-10-20
  • 打赏
  • 举报
回复
这种问题坛子上几天就出一回,到底要说多少遍阿。

这种东西在标准理是未定义的,就是说它的结果和编译器和运行环境相关,没有确定的答案,不论编译器干了什么都是对的!(包括格式化你的硬盘,把你的个人资料公布到网上)

所以一定不要在你的程序中出现这样的代码!!!!!
lifan5748 2004-10-20
  • 打赏
  • 举报
回复
出现不同的结果,仅仅是编译器的编译规则不同所致,并没有太深奥的东西。在实际中很少有人用这种表达式的,所以这种问题是没必要讨论的
simonwdjp 2004-10-20
  • 打赏
  • 举报
回复
大家踊跃发表意见呀!!
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧