C/C++编译的程序占用内存的划分

来源:百度文库 编辑:神马文学网 时间:2024/04/28 15:03:00

C/C++编译的程序占用内存的划分

ARM 2009-04-01 10:43:54 阅读13 评论0 字号:大中

1:栈区

      由编译器自动分配释放,存放函数参数、局部变量。其操作方式类似于数据结构中的栈。

2:堆区

     一般由程序分配释放,若程序不释放,程序结束时可能由OS回收。它与数据结构中的堆是两回事。分配方式类似于链表。

3:全局区(静态区)

     全局变量和静态变量存储是一块的。初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域,程序结束后由系统释放。

4:文字常量区

      常量字符串变化这里,程序结束后由系统释放。

5:程序代码区

     存放函数的二进制代码,const放在ROM中。