美文网首页
内存五大区

内存五大区

作者: 灰白猫的奶沫 | 来源:发表于2017-02-10 13:33 被阅读0次

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

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

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

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

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

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

相关文章

  • 内存五大区

    iOS内存五大区 在iOS中,内存主要分为 五大区域。如下图所示 下面分别介绍这五大区 *栈区 stack 定义...

  • iOS内存管理

    原文链接:https://www.jianshu.com/p/fb3cc5ef7b73 一、内存五大区 内存五大区...

  • iOS-底层原理22:内存五大区

    在iOS中,内存主要分为栈区、堆区、全局区、常量区、代码区五大区域。如下图所示 注意:内存五大区,实际是指虚拟内存...

  • iOS Objective-C 内存管理简介

    iOS Objective-C 内存管理 [TOC] 在iOS开发中我们常说内存有五大区,那么都是哪五大区呢?在i...

  • iOS内存五大区

    iOS内存五大区 在iOS中,内存主要分为:栈区、堆区、全局区(静态区)、常量区以及代码区这五大区。本文将对这五大...

  • 内存管理(上)

    内存五大区 内存布局 当程序运行时,系统会开辟三个区,分别是:内核区、程序使用的内存五大区和保留区。操作系统分为两...

  • iOS内存管理

    内存中的五大区域引用计数ARC MRC属性所有权僵尸对象、野指针、空指针分别指什么,有什么区别? 内存中的五大区域...

  • Swift进阶 03:值类型&引用类型

    本文主要介绍为什么结构体是值类型,类是引用类型。 值类型 前提:需要了解内存五大区,内存五大区可以参考这篇文章iO...

  • Swift-进阶 03:值类型 & 引用类型

    本文主要介绍为什么结构体是值类型,类是引用类型 值类型 前提:需要了解内存五大区,内存五大区可以参考这篇文章iOS...

  • iOS 内存管理(一)-分区及引用计数

    一、内存管理五大区 在iOS中内存主要分为五大区域:栈区、堆区、静态区、常量区、代码段。 1.栈区 栈区是一段连续...

网友评论

      本文标题:内存五大区

      本文链接:https://www.haomeiwen.com/subject/ogugittx.html