- bss 段:存放未初始化的全局变量(包括静态全局变量)和初始化为0的全局变量(包括静态全局变量),属于静态分配内存(bss = Block Started by Symbol)
- data 段:数据段,用来存放已经初始化且初始化值为非零的全局变量(包括静态变量)
- text 段:通常是指用来存放程序执行代码的一块内存区域。这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读,某些架构也允许代码段为可写,即允许修改程序。
- 堆(heap):堆是用于存放进程运行中被动态分配的内存段,它的大小并不固定,可动态扩张或缩减。当进程调用malloc等函数分配内存时,新分配的内存就被动态添加到堆上(堆被扩张);当利用free等函数释放内存时,被释放的内存从堆中被剔除(堆被缩减)
- 栈(stack):栈又称堆栈,是用户存放程序临时创建的局部变量(不包括静态局部变量)。除此以外,在函数被调用时,其参数也会被压入发起调用的进程栈中,并且待到调用结束后,函数的返回值也会被存放回栈中。
- 字符常量区(rodata):该区域存放的是字符常量,属于只读区域,有些教材把这个区域归位代码段
posted @
2024-08-02 22:25
NotReferenced
阅读(
1)
评论()
编辑
收藏
举报