博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
程序中的bss段,data段,代码段,堆,栈
阅读量:5459 次
发布时间:2019-06-15

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

程序中的bss段,data段,代码段(.text),堆(heap),栈(stack)

.bss段:程序中未初始化的和已经初始化为0的全局变量和已经初始化为0的静态局部变量(static)

.data段:程序中已经初始化的非零的全局变量和已经初始化的非零的静态局部变量(static)

代码段:用来存放代码的地方(.text段),不可修改,存放在只读区域内。

堆:程序员自己申请的内存区域,也就是用malloc()函数申请的内存区域,用free()函数来释放的区域。

栈:存放局部变量的区域,函数中的局部变量都是存放在栈中。

 

由SRAM的内存框图我们大概可以知道:栈在内存的最上区域,全局变量(数据段)在中间,(ZI段)bss段和堆(heap)在最下面的区域

注意:我们也可以自己写代码测试一下,每一种变量具体放在内存的哪个区域内。

这个博客就是写代码测试在哪个区域的:http://www.cnblogs.com/joseph-linux/p/3316963.html

参考来源:朱老师物联网大教程

转载于:https://www.cnblogs.com/nibuyaoni/p/5724013.html

你可能感兴趣的文章
Win8下更改Chrome缓存目录
查看>>
django框架小技巧
查看>>
(八)8-3多线程共享变量
查看>>
Parameter配置文件获取
查看>>
[Operating System] {ud923} P3L1: Scheduling
查看>>
java后端发送http请求使用RestTemplate
查看>>
避免商品超卖的4种方案
查看>>
AtCoder - 1999 Candy Piles
查看>>
Checklist: 2019 05.01 ~ 06.30
查看>>
【最短路】Vijos P1022Victoria的舞会2
查看>>
(原创)大数据时代:基于微软案例数据库数据挖掘知识点总结(Microsoft 线性回归分析算法)...
查看>>
调整Tomcat的并发线程到5000+
查看>>
[Typescript 2] Nullable Types - Avoiding null and undefined Bugs
查看>>
[Javascirpt AST] Babel Plugin -- create new CallExpression
查看>>
_itemmod_strengthen_item
查看>>
UVa 10622 (gcd 分解质因数) Perfect P-th Powers
查看>>
hibernate SQL聚合查询
查看>>
【BZOJ4278】[ONTAK2015]Tasowanie 后缀数组
查看>>
【BZOJ2045】双亲数 莫比乌斯反演
查看>>
【CF772D】Varying Kibibits FWT
查看>>