关于malloc不能返回动态内存是什么意思

 我来答
清河大侠
2018-04-08 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.6万
采纳率:68%
帮助的人:1208万
展开全部

malloc()是从“空闲内存堆”里返回一块所需要大小的“空闲内存块”。返回的内存块,就被称为“动态内存”,该内存使用完毕,可以用free()送回“空闲内存堆”中。如果程序运行时出现上述错误,应该是“空闲内存堆”用完了,也就是内存空间不够了。

如果自己能够改变的“栈”和“堆”的大小,而且运行时“栈”还有足够的空间。则可以适当缩小“栈”,而增大“堆”。否则,只能从程序设计角度考虑了,“量入为出”,有效利用有限的内存空间。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式