社区
C语言
帖子详情
用malloc分配了内存,而不用free释放,有什么问题么?
povety
2002-11-01 08:44:49
一个函数中间用到,且被多次调用。于是在第一次调用时,动态分配内存,在因为不知道什么时候结束,而无法释放。一直等到main()结束于系统收回,不知有没有什么问题,是不是一个好的编程习惯呢?如
float function(float y[])
{
static int count=0;
static float* yy;
if (!count) {count++;yy=(float*)malloac(...
...
}
...全文
284
4
打赏
收藏
用malloc分配了内存,而不用free释放,有什么问题么?
一个函数中间用到,且被多次调用。于是在第一次调用时,动态分配内存,在因为不知道什么时候结束,而无法释放。一直等到main()结束于系统收回,不知有没有什么问题,是不是一个好的编程习惯呢?如 float function(float y[]) { static int count=0; static float* yy; if (!count) {count++;yy=(float*)malloac(... ... }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cwanter
2002-11-01
打赏
举报
回复
如果没有修改系统的话,就没关系!
povety
2002-11-01
打赏
举报
回复
也就是说,不论何种情况,只要这个程序结束了,就没关系了,是么?
carbon107
2002-11-01
打赏
举报
回复
对于好的编程习惯应是用free来释放内存空间
但是如果你不用free来释放空间的话程序小不会出现什么问题但是如果审请的空间大的话就会出现错误了
cwanter
2002-11-01
打赏
举报
回复
这就是所谓的"内存泄漏".你不释放动态分配的内存,会导致进程能用的虚拟内存越来越少而使程序当掉。当然进程撤消后,它所占用的所有资源(包括内存)都会被释放。
Windows内核-
内存
管理
- 通过
malloc
分配
,可以通过
free
释放
,重复利用 - 每个进程都有4GB的空间,但是这4GB空间并不是都在使用,有没有一个地方在记录着哪些地址空间已经使用了,哪些没有使用? - 肯定有一个地方在...
malloc
之后为什么要
free
()?
free
到底
释放
了什么?
通俗的来说,
malloc
是
分配
内存
free
是
释放
malloc
所
分配
的
内存
。 那么
free
之后,原来
malloc
的值还在吗?如果
free
之后我还要调用这里面的值呢?
free
释放
的是
内存
而不是指针,举个例子。 假设我用
malloc
分配
了一块
内存
空间,并改写其中的内容为"100"。那么在我
free
之后,这块内容还是100,并不会变化,原来指向它的指针也还是指向它。那么
free
()所
释放
的
内存
到底是什么呢? 我们应该知道,在我们
malloc
这块区域之前,这块
内存
就有它自己的内容 当我们
free
()掉了这块
内存
,
C语言
malloc
动态
分配
内存
free
释放
问题
,为什么要
释放
?
释放
过后再次
分配
,
内存
块是怎样变化的?
释放
过后的
内存
为什么不能再用了?
C语言
malloc
动态
分配
内存
free
释放
问题
,为什么要
释放
?
释放
过后再次
分配
,
内存
块是怎样变化的?
释放
过后的
内存
为什么不能再用了?
【C++】动态
内存
管理 ⑤ ( 基础数据类型数组
内存
分析 | 类对象
内存
分析 |
malloc
分配
内存
delete
释放
| new
分配
内存
free
释放
内存
)
一、基础数据类型数组
内存
分析 1、
malloc
分配
内存
delete
释放
内存
2、new
分配
内存
free
释放
内存
二、类对象
内存
分析 1、
malloc
分配
内存
delete
释放
内存
2、new
分配
内存
free
释放
内存
七、
malloc
分配
内存
和
free
释放
内存
原理
malloc
分配
内存
和
free
释放
内存
原理
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章