C语言到底怎样释放内存?

code-artist 2006-05-10 08:07:18
如果我这样申请 (不用malloc());
struct sturdent stu[100];
编译器动态为我分配100个大小为sizeof(student)内存大小的空间。
如果我不用free()释放它,系统会自动释放吗?什么时候释放?
...全文
290 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
code-artist 2006-05-10
  • 打赏
  • 举报
回复
I see! Thank you very much!
forgetconch 2006-05-10
  • 打赏
  • 举报
回复
我同意xpdavis(咕嘟)的说法,在c中通过malloc或者relloc分配时,在使用完后通过free释放,否则会泄露内存
xombat 2006-05-10
  • 打赏
  • 举报
回复
编译器动态为我分配100个大小为sizeof(student)内存大小的空间。
=================================
如果是在全局中,在程序运行之前就分配好了,如果是局部的,他在运行到这个作用域时才分配,作用域结束时自动释放,不需要人自己释放(因为它不属于动态分配的)。

铖邑 2006-05-10
  • 打赏
  • 举报
回复
这个是静态的,不是动态分配的,不需要手工释放
xjtuzhw 2006-05-10
  • 打赏
  • 举报
回复
调用结束会自动释放的

69,381

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧