免费注册 查看新帖 |

Chinaunix

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

[C] 为什么这种写法不抱错  关闭 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2009-07-09 15:13 |只看该作者

回复 #20 foolishx 的帖子

非常感谢你的解释

论坛徽章:
0
22 [报告]
发表于 2009-07-09 16:24 |只看该作者

回复 #1 shuchi91 的帖子

为什么一定要报错?
如果你肚子饿了摘了不是自己的树上的桃子吃,但如果这棵桃树就是无主野生的,那没有人会让你赔偿的。

论坛徽章:
0
23 [报告]
发表于 2009-07-09 16:41 |只看该作者
没理由啊,数组越界不一定要报错

[ 本帖最后由 shitou254 于 2009-7-9 16:43 编辑 ]

论坛徽章:
0
24 [报告]
发表于 2009-07-09 19:35 |只看该作者
呃~越界不一定就要报错吧?那个空间是在堆上的~用户自己管理不太会轻易报错吧

论坛徽章:
0
25 [报告]
发表于 2009-07-09 19:38 |只看该作者
没意义!

论坛徽章:
0
26 [报告]
发表于 2009-07-10 06:03 |只看该作者
刚刚那个是 stack corruption,这个就是 heap corruption 了。

一再强调:C 语言的规范不要求编译器和运行库对越界访问做任何义务检查,这完全不同于 VB、.NET 等托管环境。

论坛徽章:
0
27 [报告]
发表于 2009-07-10 06:33 |只看该作者
原帖由 swxlion 于 2009-7-9 16:24 发表
为什么一定要报错?
如果你肚子饿了摘了不是自己的树上的桃子吃,但如果这棵桃树就是无主野生的,那没有人会让你赔偿的。

在C里,是这理。C不同于其它高级语言的特征之一,就是它的“边界”只是画在地上的一条线,而不是栅栏。它只防君子不防小人。
至于你跑出去了,会怎么样,它也不管的。可能掉入邻居家的陷阱里,也可能让你占了邻居家。
楼主搜搜旧帖吧。我记得,连我这傻瓜也至少说了四五遍了,两天前就说过一次类似的话。

论坛徽章:
11
未羊
日期:2013-12-16 12:45:4615-16赛季CBA联赛之青岛
日期:2016-04-11 19:17:4715-16赛季CBA联赛之广夏
日期:2016-04-06 16:34:012015亚冠之卡尔希纳萨夫
日期:2015-11-10 10:04:522015亚冠之大阪钢巴
日期:2015-07-30 18:29:402015亚冠之城南
日期:2015-06-15 17:56:392015亚冠之卡尔希纳萨夫
日期:2015-05-15 15:19:272015亚冠之山东鲁能
日期:2015-05-14 12:38:13金牛座
日期:2014-12-04 15:34:06子鼠
日期:2014-10-16 13:40:4715-16赛季CBA联赛之八一
日期:2016-07-22 09:41:40
28 [报告]
发表于 2009-07-10 09:33 |只看该作者
原帖由 foolishx 于 2009-7-9 14:23 发表
这种问题怎么总有人问呢?

情况是这样子的:操作系统会将内存分为“系统内存”和“用户内存”两大块。

系统内存的大小是一定的,由操作系统自己使用,用户程序没有办法访问这块空间,或者一旦用户进程访问 ...


这个问题和 "系统内存" 没关系.
这种写法也不会访问到其他进程的内存空间, 都是在进程自己空间内, 事实上程序想访问其他进程的空间, 反而要花些力气写点特定代码, 写点一般代码 "不小心" 访问了其他进程的空间, 应该属于开玩笑范畴。

论坛徽章:
0
29 [报告]
发表于 2009-07-10 12:03 |只看该作者

回复 #28 zylthinking 的帖子

去搜了下,确实是个被说烂了的问题,惭愧。

论坛徽章:
0
30 [报告]
发表于 2009-07-10 13:23 |只看该作者
这样就能访问其它进程堆空间或者内存空间,你们在开玩笑吧?
这么简单就访问到其它进程内存空间了,那还需要进程间通信干什么啊?
别看问题简单,真正能理解的却没有多少人
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP