c – 释放动态分配的内存

c – 释放动态分配的内存,第1张

概述在C中,当您在堆上创建一个新变量时,如下所示: int* a = new int; 你可以告诉C使用这样的删除来回收内存: delete a; 但是,当程序关闭时,是否会自动释放分配了新内存的内存? 是的,它会被自动回收,但是如果你打算编写一个大量使用堆的大型程序而不是在任何地方调用delete,你必然会快速耗尽堆内存,这会使程序崩溃. 因此,只要您不再需要所述变量,就必须仔细管理您的内存并释放动 在C中,当您在堆上创建一个新变量时,如下所示:
int* a = new int;

你可以告诉C使用这样的删除来回收内存:

delete a;

但是,当程序关闭时,是否会自动释放分配了新内存的内存?

解决方法 是的,它会被自动回收,但是如果你打算编写一个大量使用堆的大型程序而不是在任何地方调用delete,你必然会快速耗尽堆内存,这会使程序崩溃.

因此,只要您不再需要所述变量,就必须仔细管理您的内存并释放动态分配的数据,并为每个新的匹配删除(如果使用new [],则删除[]).

总结

以上是内存溢出为你收集整理的c – 释放动态分配的内存全部内容,希望文章能够帮你解决c – 释放动态分配的内存所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1243302.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存