衣联网和一起做网站 哪家强,备案域名出售是否违法,吴江区经济开发区建设工程网站,自己做网站费用c语言中需要内存来存放数据。而内存主要分为两类#xff1a;静态存储区和动态存储区。 1、静态存储区
#xff08;1#xff09;分为数据区#xff08;只读数据区#xff08;代码区#xff1f;在linux中又叫文本段.text#xff09;、读写数据区.data#xff09;、未初始…c语言中需要内存来存放数据。而内存主要分为两类静态存储区和动态存储区。 1、静态存储区
1分为数据区只读数据区代码区在linux中又叫文本段.text、读写数据区.data、未初始化区BSS。
2它们都是在程序编译连接阶段确定的。 2、动态存储区
1分为堆和栈。
2程序执行过程中动态分配大小也随之动态变化。
3从内存管理的实现的角度看来堆使用链表实现而栈使用的是线性存储的方法。 补
1关于栈
栈栈是先进后出实际的操作中栈内存可以有满栈和空栈的情况。
满栈的情况下栈指针当前的位子是已经使用的的栈区域空栈的情况是栈指针当前的位子是没有使用的栈区域。
满栈时入栈是先移动指针再放入数据出栈则是先出数据再移动指针
空栈时入栈是先放入数据再移动指针出栈则是先移动指针再出数据 2关于全局变量和局部变量的存储
a、全局变量只会存在于数据区或者BSS区。如果初始化为非0则存储在数据区否则初始化为0或者不初始化存储在BSS区。
b、局部变量分为普通auto局部变量、静态局部变量。
前者存储在栈中如果没有初始化则为随机值后者存储在数据区初始化为非0或BSS区初始化为0或者不初始化。 3、存储类、生命周期作用域、链接属性
1存储类表明变量在哪里存储生命周期表明什么时候为变量分配、收回内存作用域表明变量起作用的范围代码块函数域文件域
2存储类决定了生命周期作用域决定了链接属性。
3上面1,2中是存储类的知识点
4作用域表明变量起作用的范围代码块函数域文件域
5链接属性有外链接、内链接、空链接不参与链接。