参考博客:
http://www.cocoachina.com/ios/20171129/21362.html
iOS中的objective-c与眼是基于C语言的,因此我以为讨论oc的内存分布就是讨论c语言的内存分布,在C语言中系统把内存一共分为5部分:
1.代码区:
存放程序的代码。
2.BSS段
全局变量和静态变量是放到一块的。初始化后的全局变量和静态变量放在一块,未初始化的全局变量和全局变量放在一块。未初始化的全局变量和静态变量所在区域称为BSS段。
3.数据段
存储已经初始化的全局变量、静态变量、常量。
4.栈区
由编译器自动分配和释放,存放函数的参数值,局部变量等。
5.堆区
由程序员分配和释放,如果程序员不释放,程序会在程序结束时,由系统释放。