iOS内存中的区域划分
2017-05-10 本文已影响58人
小生图图
1.栈:栈区(stack)由系统自动分配和释放,存放方法(函数)的参数值,局部变量的值等。采用“先进后出”或者“后进先出”的原则。特点:有序、速度快、容量小
2.堆:一般由程序员分配和释放,如果不释放,则出现内存泄露。程序退出时,系统会回收你的内存。特点:无序、速度慢、容量大
3.静态存储区:全局变量(外部变量)和静态变量都存放在静态区域。这里我们需要注意,未初始化的全局变量(外部变量)和静态变量存放在一块,已初始化的存放在一起。当程序结束时,系统回收
4.常量区:存放常量的内存区域,程序结束时,系统回收
5.代码区:存放二进制代码的区域