c - 使用 malloc() 进行动态内存分配

标签 c memory-management operating-system

如何使用 malloc() 分配内存?谁分配内存操作系统还是编译器?一旦使用 free() 释放内存,它可以被其他进程使用吗?

最佳答案

操作系统中有 4 个内存区域:Heap、Stack、Text 和 Data。当您使用 malloc 时,操作系统从堆区域提供内存。编译器不负责分配该内存。当您使用 free 时,内存块将返回到堆中。

关于c - 使用 malloc() 进行动态内存分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26746638/

相关文章:

c - 跟踪日期并允许菜单选择的银行系统

c - 如何解析以逗号分隔的字符串?

c - 关于 "static"的用法,非常基本

c - 逐个字符地打印一个字符串,在每个字符后延迟

python - 为类型化内存 View 分配内存的推荐方法是什么?

sockets - 'EAGAIN' 或 'EWOULDBLOCK' 之间的区别

c - VESA/VGA 早期内核控制台中字符结构的正确形式是什么?

mysql - 数据库内存和磁盘工作分配

ios - 在 objective-c 中需要指针对象

operating-system - ISR 和函数调用的区别?