C语言使用的内存是虚拟内存。根据功能不同,C语言中的虚拟内存分为三类:栈区、堆区、常量数据区。无论是单个变量还是数组,内存分配都是这样划分的。
栈区、常量数据区、堆区由编译器负责分配,操作系统负责管理。程序员可以在堆区域使用malloc()来动态分配堆内存。
扩展信息
内存分配和释放注意事项:
1是一个库函数,而不是调用系统
分配的物理内存可能会超出需要的数量---有些编译器以4字节为单位进行分配。p>
3.不能跨不同平台依赖malloc
4。当请求的动态内存无法满足时,返回空的malloc
5.当free参数为空时,函数直接返回
参考来源:——矩阵
参考来源:——C语言
上一篇:函数是在哪个内存区运行
下一篇:动态内存分配函数有什么