总结C/C++中程序内存区域划分

C/C++程序内存分配的⼏个区域

1..栈区(stack):在执⾏函数时,函数内局部变量的存储单元都可以在栈上创建,函数执⾏结束时 这些存储单元⾃动被释放。栈内存分配运算内置于处理器的指令集中,效率很⾼,但是分配的内 存容量有限。栈区主要存放运⾏函数⽽分配的局部变量、函数参数、返回数据、返回地址等。

2.堆区(heap):⼀般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。分配⽅ 式类似于链表。

  1. 数据段(静态区)(static)存放全局变量、静态数据。程序结束后由系统释放。

  2. 代码段:存放函数体(类成员函数和全局函数)的⼆进制代码

这也是与动态内存管理相关的一些知识.现在进行一些补充.

相关推荐
头发还没掉光光2 小时前
C/C++类型转换
c语言·开发语言·c++
爪哇部落算法小助手2 小时前
爪哇周赛 Round 1
c语言·c++·算法
CoderBob3 小时前
【EmbeddedGUI】简易Page开发模式
c语言·图像处理·单片机
橘色的喵4 小时前
C语言面向对象范式:Nginx模块化架构的设计分析
c语言·nginx·架构·面向对象
Xiaochen_124 小时前
有边数限制的最短路:Bellman-Ford 算法
c语言·数据结构·c++·程序人生·算法·学习方法·最简单的算法理解
Aldrich_3211 小时前
蓝桥杯嵌入式赛道—-软件篇(GPIO输出模式配置)
c语言·vscode·stm32·单片机·嵌入式硬件·蓝桥杯
@卞12 小时前
C语言常见概念
c语言·开发语言
芝麻馅汤圆儿13 小时前
c文件编译
c语言·开发语言
智者知已应修善业14 小时前
【c语言蓝桥杯计算卡片题】2023-2-12
c语言·c++·经验分享·笔记·算法·蓝桥杯
是苏浙15 小时前
零基础入门C语言之贪吃蛇的实现
c语言·开发语言·数据结构