免费注册 查看新帖 |

Chinaunix

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

C深度剖析 [复制链接]

论坛徽章:
0
71 [报告]
发表于 2012-06-21 18:26 |显示全部楼层
回复 220# 幻の上帝


    你是sb吗? 不懂别乱贴行吗??

   跟implementation-defined 有关就这一句话,越发的觉得你装叉了

5 A strictly conforming program shall use only those features of the language and library
specified in this International Standard.3) It shall not produce output dependent on any
unspecified, undefined, or implementation-defined behavior, and shall not exceed any
minimum implementation limit.


这是定义你如何写程序的,跟编译器的实现有一毛钱关系???

register int a;

这么定义只能说明你程序写的不符合c标准, 你不能说编译器做的不符合标准吧

还有It shall not produce output dependent on

这是 produce output ,会翻译吗?产生输出,输出时不准用implementation-defined

你以为你多牛逼啊,给你文档你也不会看

论坛徽章:
0
72 [报告]
发表于 2012-06-21 18:34 |显示全部楼层
回复 221# hbmhalley


    错,建议你读懂标准再来
   标准的意思让变量存取的速度更快,没说非得放寄存器里,只是实现时放到寄存器里最快,所以这么干了,首先这么干是对的,然后再次基础上加些利于这么实现的限制,无可厚非也不能说他不符合标准吧,到目前为止你都是逻辑混乱的

“限制哪些register变量放在register里是implementation-defined的”  简直是逻辑混乱

论坛徽章:
0
73 [报告]
发表于 2012-06-21 18:36 |显示全部楼层
回复 223# zylthinking


    有他代码?? 发给我可以吗 ,我也膜拜一下大神

论坛徽章:
0
74 [报告]
发表于 2012-06-21 18:41 |显示全部楼层
回复 230# zylthinking


    http://code.google.com/p/yslib/ 这上吗 都是吗??

论坛徽章:
0
75 [报告]
发表于 2012-06-21 18:54 |显示全部楼层
回复 233# 幻の上帝


    我说的不是开始的一段吗???
  果然狗嘴里吐不出象牙 ,你瞎了么??

我标的红的你看了么program  指的是strictly conforming program ,重点是什么?是program  ,标准说的是程序,而且没说编译器,首先这个跟编译器就没半毛钱关系

features of the language and library specified in this International Standard ,register 是c的一个关键字,不是语言的features (我也不翻译了,省的我翻译的不准确,有爱您的理解)

还有It shall not produce output dependent on any unspecified, undefined, or implementation-defined behavior

这是 produce output ,会翻译吗?产生输出,输出时不准用implementation-defined ,标准没说整个程序中时不准用 implementation-defined

看懂了 ,在回答行吗??

论坛徽章:
0
76 [报告]
发表于 2012-06-21 18:56 |显示全部楼层
回复 233# 幻の上帝



    register 是c的一个关键字,不是语言的features ?
  这句话后面应该有个问号

  还有我们现在讨论的是什么问题??

  是

register 变量必须是 能被CPU 寄存器所接受的类型。


C标准根本没有这种限制
如果编译器限制
说明编译器是非标准的

这句话对错的问题,之前楼提出的问题在这个问题讨论之后再说,在某楼我说过,你自己没看懂??

论坛徽章:
0
77 [报告]
发表于 2012-06-21 19:12 |显示全部楼层
回复 241# 幻の上帝


    跟你也鸡同鸭讲,跟限制有什么关系???

     现在的问题你了解吗?

   书上说:register 变量必须是 能被CPU 寄存器所接受的类型。
   pm说:说明编译器是非标准的

   我说:pm说的不对,怎么了??

你要问我限制什么意思,你先说明限制跟这个问题有什么关系

   你看标准对register的定义了吗,就来胡说八道?

标准的意思让变量存取的速度更快,没说非得放寄存器里,只是实现时放到寄存器里最快,所以这么干了,首先这么干是对的,然后再次基础上加些利于这么实现的限制,无可厚非也不能说他不符合标准吧


strictly conforming implementation跟这题有1毛钱关系???除了堆概念能来点干货吗

我上个回答,你还没有令人信服的答案呢,除了堆概念装x没看出来什么啊

论坛徽章:
0
78 [报告]
发表于 2012-06-21 19:14 |显示全部楼层
回复 241# 幻の上帝


    4) This implies that a conforming implementation reserves no identifiers other than those explicitly
reserved in this International Standard.

看好了,register是c的关键字你敢说不再this International Standard,不懂英文的话就看别人翻译完的文章,别误人误己

论坛徽章:
0
79 [报告]
发表于 2012-06-21 19:45 |显示全部楼层
回复 247# hbmhalley


    作者是说错了,这我从来没反对过,踏错不错无所谓,但是pm同样说错了

  
   现在我反驳讲一下pm那句话的意思:
   pm的限制是指:“register 变量必须是固定的几个类型”

即使编译限制了“register 变量必须是 能被CPU 寄存器所接受的类型”你也不能说他是不符合标准的,以为它加快一些类型的数据的存取速度,它达到了标准所要求的功能

论坛徽章:
0
80 [报告]
发表于 2012-06-21 19:47 |显示全部楼层
回复 246# 幻の上帝


            作者是说错了,这我从来没反对过,踏错不错无所谓,但是pm同样说错了

  
   现在我反驳讲一下pm那句话的意思:
   pm的限制是指:“register 变量必须是固定的几个类型”

即使编译限制了“register 变量必须是 能被CPU 寄存器所接受的类型”你也不能说他是不符合标准的,以为它加快一些类型的数据的存取速度,它达到了标准所要求的功能

我这么回答这个问题你同意不,然后我在回答别的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP