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

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

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

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

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

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

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

相关推荐
aramae23 分钟前
大话数据结构之<队列>
c语言·开发语言·数据结构·算法
程序员编程指南2 小时前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
李永奉3 小时前
STM32-定时器的基本定时/计数功能实现配置教程(寄存器版)
c语言·开发语言·stm32·单片机·嵌入式硬件
麦子邪5 小时前
C语言中奇技淫巧04-仅对指定函数启用编译优化
linux·c语言·开发语言
华强笔记5 小时前
C程序内存布局详解
服务器·c语言
程序员编程指南5 小时前
Qt OpenGL 集成:开发 3D 图形应用
c语言·数据库·c++·qt·3d
程序员编程指南7 小时前
Qt 网络编程进阶:RESTful API 调用
c语言·网络·c++·qt·restful
程序员编程指南7 小时前
Qt XML 与 JSON 数据处理方法
xml·c语言·c++·qt·json
程序员编程指南9 小时前
Qt 网络编程进阶:网络安全与加密
c语言·网络·c++·qt·web安全
GOATLong10 小时前
传输层协议TCP
c语言·开发语言·网络·c++·网络协议·tcp/ip