c数据段

本文概述

  • 1.数据区
  • 2.代码区
  • 3.堆区
  • 4.堆栈区
要了解我们的C程序的工作方式,我们需要了解分配给我们程序的内存的排列方式。
【c数据段】将所有变量,函数和数据结构分配给内存到称为数据段的特殊内存段中。数据段主要分为四个不同的部分,这些部分专门分配给我们C程序中定义的不同类型的数据。
c数据段

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

    推荐阅读