美文网首页
C/C++内存分类

C/C++内存分类

作者: HelloRyan | 来源:发表于2016-08-09 20:56 被阅读55次

程序中内存分类主要有以下几种:

(1)栈存储区:主要存储局部变量、函数参数、函数返回值等。

栈内存由编译器在需要时自动分配,使用完后自动释放。

(2)堆存储区:由new、malloc申请到的空间。

需要程序员自己申请,使用完后要及时释放,否则会造成内存泄露。

(3)全局数据区(静态数据区):存储程序中的全局变量和静态变量。已初始化的变量和未初始化的变量分开存储,但在相邻的存储区域。程序结束由系统释放。

(4)文字常量区:存储常量字符串。程序结束由系统释放。

(5)程序代码区:存放函数体的二进制代码。

△内存泄露:内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(简单说就是内存空间使用完毕之后未回收)即所谓内存泄漏。

相关文章

  • C/C++内存分类

    程序中内存分类主要有以下几种: (1)栈存储区:主要存储局部变量、函数参数、函数返回值等。 栈内存由编译器在需要时...

  • c++内存管理

    c++内存管理长文 c++内存管理

  • OC关于block探究

    Block分类 主要是根据内存管理进行分类 iOS中.m文件重写为C++文件 使用的命令行 一、Block根据内存...

  • C++<第二十二篇>:new和delete运算符

    new 和 delete 是C++在C之后新增的两个运算符,new用来分类内存,delete用来释放内存。 (1)...

  • 内存管理

    内容包括: C++内存管理 Java内存管理 C++内存管理 内存分配方式 在C++中,内存分成5个区,分别是栈、...

  • C/C++内存和crash分析

    C/C++内存和crash分析 标签(空格分隔): C/C++ native内存 段错误 native内存泄露 C...

  • C++之内存布局

    在C++之内存管理一文中,我们已经了解到C++的内存管理,这里介绍C++的典型内存布局结构。 1、总体来说,C/C...

  • GC基础

    1.什么是垃圾 C语言申请内存:malloc free C++: new delete c/C++ 手动回收内存 ...

  • 内存池

    参考资料 C++内存池介绍与经典内存池的实现 C++ 应用程序性能优化,第 6 章:内存池 linux c++ 内...

  • C++运算符重载实现(加号、左移、递增、赋值、关系运算符、函数调

    先来复习一下C++的内存分区问题~ C++内存分区 C++程序的内存分区可划分为四大内存分区:堆、栈、全局/静态存...

网友评论

      本文标题:C/C++内存分类

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