【发布时间】:2020-01-10 07:50:03
【问题描述】:
我现在正在学习 C,并试图弄清楚 C 的内存管理是如何工作的。如果我错了,请纠正我,但据我所知:
静态内存分配 - 这发生在编译期间。编译器分配静态内存所需的必要内存。
静态内存释放 - 当块/函数完成运行(对于局部变量)或整个程序完成执行(对于全局变量)时,内存会自动释放。
动态内存分配 - 内存是在运行时分配的,因为此时输入的大小是未知的。
动态内存释放 - 内存在 free() 执行时被释放。
这是对的吗?我错过了什么吗?
【问题讨论】:
标签: c memory memory-management