内存五大区

2017-02-10  本文已影响0人  灰白猫的奶沫

一个由c/oc编译的程序占用的内存分为以下五个部分:

1.栈区:由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。程序自动管理不需要手动管理。

2.堆区:一般由程序员手动管理,  若程序员不释放,程序结束时可能由OS回收 。

3.静态区(全局区):保存自动全局变量和 static 变量(包括 static 全局和局部变量)。静态区的内容在总个程序的生命周期内都存在,由编译器在编译的时候分配。注意:未初始化的全局变量和未初始化的static 变量在相邻的另一块区域。

4.常量区:存放常量字符串。 程序结束后由系统释放。

5.方法区(程序代码区):方法转为函数具体实现,存放函数体的二进制代码。

上一篇 下一篇

猜你喜欢

热点阅读