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

目录

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

  1. 栈区(stack):在执⾏函数时,函数内局部变量的存储单元都可以在栈上创建,函数执⾏结束时
    这些存储单元⾃动被释放。栈内存分配运算内置于处理器的指令集中,效率很⾼,但是分配的内
    存容量有限。 栈区主要存放运⾏函数⽽分配的局部变量、函数参数、返回数据、返回地址等。
  2. 堆区(heap):⼀般由程序员分配释放, 若程序员不释放,程序结束时可能由OS(操作系统)回收 。分配⽅式类似于链表。
  3. 数据段(静态区)(static)存放全局变量、静态数据。程序结束后由系统释放。
  4. 代码段:存放函数体(类成员函数和全局函数)的⼆进制代码。
相关推荐
沐知全栈开发几秒前
jEasyUI 设置排序
开发语言
code bean1 分钟前
【C++ 】C++ 与 C#:using 关键字、命名空间及作用域解析符对比
开发语言·c++·c#
CAE虚拟与现实2 分钟前
C# 调用 DLL为什么不像 C/C++调用 DLL 时需要lib库
开发语言·c++·c#·动态链接库·dll库·lib库
Larry_Yanan3 分钟前
Qt线程使用(一)直接继承QThread类
开发语言·c++·qt·ui
vortex53 分钟前
Bash One-Liners 学习精要指南
开发语言·chrome·bash
Yu_Lijing12 分钟前
【个人项目】C++基于websocket的多用户网页五子棋(上)
开发语言·c++·websocket
脏脏a12 分钟前
【初阶数据结构】栈与队列:定义、核心操作与代码解析
c语言·开发语言
济宁雪人13 分钟前
Java安全基础——序列化/反序列化
java·开发语言
q***017714 分钟前
Java进阶--IO流
java·开发语言
lsx20240614 分钟前
C语言中的枚举(enum)
开发语言