计算机划分的内存区域

    内存划分区域 储存内容 管理者 申请和释放过程 可能因为操作不当导致的BUG
    堆区
    heap
    动态变量 由程序员手动申请与释放的动态内存区域 使用Malloc/new
    free/delete
    指令分配和释放
    不及时释放可能照成(内存泄漏)
    (例如递归函数不释放内存)
    栈区
    stack
    局部变量 由编译器(程序自己决定)内存的分配和释放 当函数、执行结束后
    程序自行释放
    当内存被占满时会照成(内存溢出)
    全局\静态区
    global
    全局变量、
    静态变量
    常数
    由系统分配和释放的内存区域 当程序运行结束后,
    由系统释放
    代码区
    code
    函数体的二进制代码 由操作系统分配和释放 完全由系统托管