LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: zhhhuang

malloc失败,是否返回一个NULL pointer?

[复制链接]
发表于 2004-12-19 14:45:56 | 显示全部楼层
无论如何,这么一点空间是绝对不会占满堆的空间的啊
对于一般的程序来说,堆的大小至少也有 1G 左右的空间啊
发表于 2004-12-19 14:59:28 | 显示全部楼层
Post by zhhhuang
void* ptr = malloc( 10000000 );

兄弟,就这么一点代码,谁能找出错误来?
最好把完整的代码贴出来,代码太大就用附件。
发表于 2004-12-19 15:06:23 | 显示全部楼层
Post by herberteuler
无论如何,这么一点空间是绝对不会占满堆的空间的啊
对于一般的程序来说,堆的大小至少也有 1G 左右的空间啊

你可以先试着开一个小片空间出来,看能成功否

确实,一个进程的虚拟空间中堆可能达到1G,但是你malloc的时候是对物理内存的操作,很可能就失败了
发表于 2004-12-19 15:14:24 | 显示全部楼层
楼主根本没有把情况说清楚,建议大家在楼主没有贴出完整的代码并说清楚现场的情况之前,不要急于下结论。
发表于 2004-12-20 10:32:54 | 显示全部楼层
版主说得对,还是贴出来代码看看!
发表于 2004-12-21 11:28:36 | 显示全部楼层
你确信是这一句引起的"segmentation fault"吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表