zoukankan      html  css  js  c++  java
  • 内存四区模型

    内存可以先粗略的分为四个区,分别是代码区,数据区,栈区和堆区。其中,数据区可以分为全局区/静态区、常量区。

    数据区内容的生命周期从程序开始到程序终止;栈区的内容从函数左括号开始,到右括号为止,函数结束后,内存自动释放回收;堆区的内容由程序员自己开辟,手动释放。

    代码区

    程序指令

    数据区:(全局区/静态区/常量区)

    初始化的数据:

    全局变量,静态全局变量,静态局部变量

    未初始化的数据:

    未初始化的全局变量,静态全局变量,静态局部变量,默认值均为0

    常量

    字符串常量

    栈区

    变量、数组

    结构体、指针

    枚举、函数形参

    堆区:大型数据,程序员自己开辟内存存放的数据

     栈区向下生长,数值逐渐减小;堆区向上生长,数值逐渐增大。死循环不会使程序崩掉(占满内存),但是会占满CPU,递归会导致程序崩溃,导致栈溢出。

  • 相关阅读:
    nginx安装:linux环境下安装包安装
    Effective C++
    Win32 Msg
    C++ 17
    Win32 Threads
    Exceptional C++
    C++11
    STL 分类
    C++类型转换
    红黑树
  • 原文地址:https://www.cnblogs.com/qinguoyi/p/10154081.html
Copyright © 2011-2022 走看看