• 代码段:编译之后的代码
  • 数据段:
    • 字符串常量:比如NSString *str = @"123"
    • 已初始化的数据:已初始化的全局变量、静态变量等
    • 未初始化的数据:未初始化的全局变量、静态变量等
  • 栈(stack)区:局部变量,函数参数。分配的内存空间越来越小。超出作用域后自动释放
  • 堆(heap)区存放alloc、malloc、calloc等关键字生成的的对象。分配的内存空间越来越大。常说的内存管理也是管理堆区的内存