内存分区1
. 栈区 Stack
存放局部变量和函数形参
函数结束时自动释放
特点:连续内存、先进后出/后进先出/FILO、空间小、速度快
如:线性表的顺序表示即静态数组
- 堆区 Heap
可以“手动”管理的存储区
new delete malloc realloc free等实现
特点:不连续、空间大、速度慢、易产生碎片
- 全局区/静态区
存放已/未初始化的全局变量:
- static修饰的或者
- 在函数外定义的变量
.data 段:存放已初始化且初始值不为 0 的全局变量和静态变量。
.bss 段:存放未初始化或初始化为 0 的全局变量和静态变量。操作系统在加载程序时,会自动将 BSS 段所在的内存区域清零,因此这部分在可执行二进制文件中不占用实际的磁盘空间。
- 常量区(.rodata)
read only data
- 字符常量
- const修饰的常变量
- 代码区(.text)
这里存放着程序编译后的机器指令序列。只读的。
浙公网安备 33010602011771号