本文概述
- 1.数据区
- 2.代码区
- 3.堆区
- 4.堆栈区
【c数据段】将所有变量,函数和数据结构分配给内存到称为数据段的特殊内存段中。数据段主要分为四个不同的部分,这些部分专门分配给我们C程序中定义的不同类型的数据。
文章图片
数据段的组成部分是:
1.数据区它是永久存储区。所有静态变量和外部变量都存储在数据区中。存储在数据区中的变量一直存在,直到程序退出。
2.代码区这是只能由功能指针访问的存储区。代码区的大小是固定的。
3.堆区众所周知,C支持动态内存分配。 C提供了malloc()和calloc()之类的函数,用于动态分配内存。因此,堆区域用于存储通过使用动态内存分配创建的数据结构。堆区域的大小是可变的,并且取决于内存中的可用空间。
4.堆栈区堆栈区分为两部分:初始化和非初始化。初始化变量的优先级高于非初始化变量。
- 所有自动变量都将内存存储到堆栈区域。
- c中的常量存储在堆栈区域中。
- 默认存储类的所有局部变量都存储在堆栈区域中。
- 函数参数和返回值存储在堆栈区域中。
- 堆栈区域是临时存储区域,因为只要程序超出范围,存储在堆栈区域中的变量就会被删除。