c/c++程序的内存开辟时 的内存情况

我们写的代码都是要存放在内存空间中的,我们经常说堆区,静态区,还有栈区,相信很多人不是很明白,在今天这篇博客中让大家对它们有一个粗略的认识


1.栈区(static)

在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时,这些存储单元自动被释放,栈内存分配运算内置与处理器的指令集中,效率很高,但是分配的内存容量有限。栈区主要存放要运行函数所分配的局部变量、函数参数、返回数据、返回地址等等

2.堆区(heap)

一般由程序员分配释放,若程序员不释放,程序结束时可能由操作系统回收。分配方式类似于链表

3.数据段(静态区)(static)

存放全局变量、静态数据,程序结束后由操作系统释放

4.代码段

存放函数体(类成员函数和全局函数)的二进制代码


对于C语言,我们目前了解这么多就够用,我们下期再见!!!

相关推荐
乾元2 分钟前
基于时序数据的异常预测——短期容量与拥塞的提前感知
运维·开发语言·网络·人工智能·python·自动化·运维开发
江上清风山间明月3 分钟前
使用python将markdown文件生成pdf文件
开发语言·python·pdf
j_xxx404_6 分钟前
C++算法入门:二分查找合集(二分查找|在排序数组中查找元素的第一个和最后一个位置)
开发语言·c++
ss2739 分钟前
阻塞队列:ArrayBlockingQueue如何用Lock与Condition实现高效并发控制
开发语言·python
CodeCraft Studio12 分钟前
Vaadin 25 正式发布:回归标准Java Web,让企业级开发更简单、更高效
java·开发语言·前端·vaadin·java web 框架·纯java前端框架·企业级java ui框架
Shirley~~16 分钟前
PPTist 幻灯片工具栏Toolbar部分
开发语言·前端·javascript
|晴 天|17 分钟前
Promise 与 async/await 错误处理最佳实践指南
开发语言·前端·javascript
_OP_CHEN19 分钟前
【Python基础】(三)Python 语法基础进阶:条件循环 + 实战案例,从入门到精通的核心跳板
开发语言·python·python入门·条件语句·循环语句·python基础语法
苹果电脑的鑫鑫19 分钟前
.eslintrc.js这个文件作用
开发语言·javascript·ecmascript
ytttr87319 分钟前
matlab进行利用遗传算法对天线阵列进行优化
开发语言·算法·matlab