博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
内存分配
阅读量:5172 次
发布时间:2019-06-13

本文共 409 字,大约阅读时间需要 1 分钟。

C、C++中内存分配方式:

1.从静态存储区域分配: 

内存在程序编译时就已经分配好,这块内存在程序的整个运行期间都存在,速度快,不容易出错,因为有系统会善后。例如全局变量,static变量等。

2.在栈上分配: 

在执行函数时,函数内局部变量的存储单元都在栈上创建,函数执行结束时这些存储单元自动被释放。

3.从堆上分配: 

即动态内存分配。程序在运行的时候用malloc或new申请任意大小的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由程序员决定,使用非常灵活。如果在堆上分配了空间,就有责任回收它,否则运行的程序会出现内存泄漏,另外频繁地分配和释放不同大小的堆空间将会产生堆内碎块。

 

一个C/C++程序编译时内存分为5大存储区:堆区、栈区、全局区、文字常量区、程序代码区。

转载于:https://www.cnblogs.com/yujing611033/p/6044560.html

你可能感兴趣的文章
FastReport使用一——简介
查看>>
ODbgscript 1.82.x Document
查看>>
C++ malloc new 的区别
查看>>
js放大镜的案例
查看>>
jquery的jsonp
查看>>
Java基础知识回顾
查看>>
超越阿里云,华为云网络服务竟然这么厉害!
查看>>
glob模块
查看>>
构建gulp项目
查看>>
为什么要使用class.forname在DriverManager.getConnection之前
查看>>
经典递归问题
查看>>
HDU 4915 Parenthese sequence
查看>>
学习笔记之TCP/IP协议分层与OSI參考模型
查看>>
Mr.Xu的找实习之路
查看>>
Android NDK 如何缩减库的大小
查看>>
wget(转)
查看>>
运维自动化之5 - 基于LVS实现4层负载均衡应用
查看>>
Linq
查看>>
《鸟哥的Linux私房菜》学习笔记(8)——bash脚本编程之变量
查看>>
python learning2.py
查看>>