免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: wodetian
打印 上一主题 下一主题

怎么这输出什么? [复制链接]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
11 [报告]
发表于 2006-11-24 11:21 |只看该作者
原帖由 chzht001 于 2006-11-24 11:14 发表


怎没关系?
语法树啊
看实现方式
对于gcc编译器
在算第一个+时先求出两个变量的值,++i和++i,由于是同一个变量因此在+时是两个两次++i后的值相加,并放在临时变量中再算第三个++i时就像一般思维那样了

...

p=(++j)+(++j)+(++j); 是未定义的,其结果不确定。你给出的阐述只是其中一种可能的实现方式,所以说明不了什么问题。这样做也说明了你其实还不明白这种未定义的现象。

论坛徽章:
0
12 [报告]
发表于 2006-11-24 11:22 |只看该作者
凡是写这类代码的员工一律解雇;学生一律开除学籍;这下清静了吧

论坛徽章:
0
13 [报告]
发表于 2006-11-24 11:26 |只看该作者
原帖由 flw 于 2006-11-24 11:21 发表

p=(++j)+(++j)+(++j); 是未定义的,其结果不确定。你给出的阐述只是其中一种可能的实现方式,所以说明不了什么问题。这样做也说明了你其实还不明白这种未定义的现象。


是可能的一种实现方式, 如果出现不确定的情况我知道我没办法,但我觉得那是编译器的缺陷,自己小心就是了

论坛徽章:
0
14 [报告]
发表于 2006-11-24 11:30 |只看该作者
原帖由 prc 于 2006-11-24 11:22 发表
凡是写这类代码的员工一律解雇;学生一律开除学籍;这下清静了吧


也不全是学生的错,说不定将来编译器可以做到像一般思维结果出现的那样,
如果代码都是运行结果和看上去总是不一致的话(是不是有点像读风格不好的代码),那不累死了,编译器也是有局限的呀,也需要不断发展
当然这样也好,如果编译器真的那么好了,我们干啥呀(人人都会编程了)

[ 本帖最后由 chzht001 于 2006-11-24 11:35 编辑 ]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
15 [报告]
发表于 2006-11-24 11:39 |只看该作者
原帖由 chzht001 于 2006-11-24 11:26 发表

是可能的一种实现方式, 如果出现不确定的情况我知道我没办法,但我觉得那是编译器的缺陷,自己小心就是了

不是编译器的缺陷。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
16 [报告]
发表于 2006-11-24 11:40 |只看该作者
原帖由 chzht001 于 2006-11-24 11:30 发表

也不全是学生的错,说不定将来编译器可以做到像一般思维结果出现的那样,
如果代码都是运行结果和看上去总是不一致的话(是不是有点像读风格不好的代码),那不累死了,编译器也是有局限的呀,也需要不断发展
...

看来你对“标准”一词的理解真的是很有问题啊。

论坛徽章:
0
17 [报告]
发表于 2006-11-24 11:48 |只看该作者
原帖由 flw 于 2006-11-24 11:40 发表

看来你对“标准”一词的理解真的是很有问题啊。


呵呵,我明白您的意思,只是我这个人思考问题的标准和现实的标准不太一样,

晕,我都不知道自己在说什么了, 还竟然有修改标准的冲动  

[ 本帖最后由 chzht001 于 2006-11-24 12:03 编辑 ]

论坛徽章:
0
18 [报告]
发表于 2006-11-24 12:25 |只看该作者
原帖由 chzht001 于 2006-11-24 11:48 发表


呵呵,我明白您的意思,只是我这个人思考问题的标准和现实的标准不太一样,

晕,我都不知道自己在说什么了, 还竟然有修改标准的冲动  


传说:神制定规则供世人遵守!!!

~~~莫非你要逆天!?

论坛徽章:
0
19 [报告]
发表于 2006-11-24 20:08 |只看该作者
学习中

论坛徽章:
0
20 [报告]
发表于 2006-11-24 20:16 |只看该作者
原帖由 whyglinux 于 2006-11-23 20:14 发表
p=(++j)+(++j)+(++j); 是无定义的,其结果不确定。上面两位给出的汇编只是其中一种可能的实现方式,所以说明不了什么问题。这样做也说明了两位其实还不明白这种无定义的现象。

具体可参见这个帖子:http://bbs.chinaunix.net/viewthread.php?tid=851568


谢谢,学习了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP