问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言的内存变量

发布网友 发布时间:2022-04-28 12:14

我来回答

1个回答

热心网友 时间:2023-10-09 00:17

 存储类别指的是数据在内存中存储的方法。存储方法分为静态存储和动态存储两大类。标准C语言为变量、常量和函数定义了4种存储类型:extern、auto、static、register。根据变量的存储类别,可以知道变量的作用域和存储期。这4种存储类型可分为两种生存期限:永久的(在整个程序执行期都存在)和临时的(暂时保存在堆栈和寄存器中)。extern和static用来标识永久生存期限的“变量和函数”,而anto和register用来标识临时生存期限的"变量"。只有变量才有临时生存期限。一个变量和函数只能具有一个存储类型,也只能有一种生存期限。

  内存中供用户使用的空间有三部分:

程序区:存放程序的可执行代码;

静态存储区:存放静态变量(全局变量和静态局部变量);

动态存储区:存放函数调用时调用函数的现场保护和返回地址、函数形参、自动局部变量;

  变量的声明分为”定义性声明“(需建立存储空间,如:int a;)和”引用性声明“(不需建立存储空间,如extern a;)。广义上讲,声明包括定义,一般为叙述方便,把建立存储空间的声明称定义,而不不需建立存储空间的声明称声明。

auto

  函数中的局部变量,如果不用关键字static加以声明,编译系统对它们是动态地分配存储空间的。函数的形参和在函数中定义的变量(包括在复合语句中定义的变量)都属此类。在调用该函数时,系统给形参和函数中定义的变量分配存储空间,数据存储在动态存储区中。在函数调用结束时就自动释放这些空间。如果是在复合语句中定义的变量,则在变量定义时分配存储空间,在复合语句结束时自动释放空间。因此这类局部变量称为自动变量(auto variable)。自动变量用关键字auto作存储类别的声明。

  对自动变量赋初值,不是在编译时进行的,而是在函数调用时进行。对自动变量来说,若不赋初值,则它的值是一个不确定的值。

热心网友 时间:2023-10-09 00:17

 存储类别指的是数据在内存中存储的方法。存储方法分为静态存储和动态存储两大类。标准C语言为变量、常量和函数定义了4种存储类型:extern、auto、static、register。根据变量的存储类别,可以知道变量的作用域和存储期。这4种存储类型可分为两种生存期限:永久的(在整个程序执行期都存在)和临时的(暂时保存在堆栈和寄存器中)。extern和static用来标识永久生存期限的“变量和函数”,而anto和register用来标识临时生存期限的"变量"。只有变量才有临时生存期限。一个变量和函数只能具有一个存储类型,也只能有一种生存期限。

  内存中供用户使用的空间有三部分:

程序区:存放程序的可执行代码;

静态存储区:存放静态变量(全局变量和静态局部变量);

动态存储区:存放函数调用时调用函数的现场保护和返回地址、函数形参、自动局部变量;

  变量的声明分为”定义性声明“(需建立存储空间,如:int a;)和”引用性声明“(不需建立存储空间,如extern a;)。广义上讲,声明包括定义,一般为叙述方便,把建立存储空间的声明称定义,而不不需建立存储空间的声明称声明。

auto

  函数中的局部变量,如果不用关键字static加以声明,编译系统对它们是动态地分配存储空间的。函数的形参和在函数中定义的变量(包括在复合语句中定义的变量)都属此类。在调用该函数时,系统给形参和函数中定义的变量分配存储空间,数据存储在动态存储区中。在函数调用结束时就自动释放这些空间。如果是在复合语句中定义的变量,则在变量定义时分配存储空间,在复合语句结束时自动释放空间。因此这类局部变量称为自动变量(auto variable)。自动变量用关键字auto作存储类别的声明。

  对自动变量赋初值,不是在编译时进行的,而是在函数调用时进行。对自动变量来说,若不赋初值,则它的值是一个不确定的值。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...有关气体的制取装置或实验操作,错误的是( )A.制取氧气的发生装置B... 下列实验操作和做法中,错误的是( ) A.制取气体时,先检查气体发生装置的... 《两个人的小森林》庄羽身世 《我的兄弟叫顺溜》中陈大雷的警卫员演员庄羽的基本资料,要详细点 1s2 2s2 2p6 3s2……能继续往后吗?f再往后是什么?顺序怎么排? 苹果六s24G 的是多少寸? 庄羽作品集内容简介 惰性电子对效应解释与其内容 不是我说你内容简介 半张脸的作者简介 天龙八部代练 如果从新号到80不给弄好装备怎么收费啊知道的说说 天龙八部2地宫的代练是真的吗 天龙八部,代练怎么个代练法 C语言问题:内存的分配方式有哪几种? 荣耀畅玩5x 双卡双待 移动版 智能手机怎么样 天龙八部做代练能赚钱吗? C语言:内存分哪几个区?各有什么用? 天龙八部怀旧每个区代练呆多久 华为荣耀5XKIW-tl00h价格是多少? 天龙八部 地宫的代练 他们怎么冲级 ? 在c语言中 占用的内存 荣耀畅玩5X移动版换屏多少钱? c语言内存有几种分配方式? 天龙八部代练的具体价格是多少? 华为荣耀5x屏幕碎了换一下大概多少钱 华为荣耀5X3G内存运行16G内存价格是多少 华为荣耀畅玩5x显示屏多少钱? 华为荣耀畅玩5X屏幕坏了换一个要多少钱 华为荣耀畅玩5x联通版官方报价 g.pconline.com.cn 华为荣耀5x 与畅玩5x有什么区别 分别在实体店多少钱 天龙八部代练是如何做的 C语言和内存关系 天龙八部游戏代练赚钱吗? C语言的内存分配,这些对吗? (天龙八部)代练级从50到82多少RMB呢? c语言内存问题 开个天龙八部代练工作室能挣钱吗 C语言中的内存分配问题 天龙八部找人代练的号安全吗? c语言中,常量到底占不占内存空间? 天龙八部找人代练安全吗、练好之后不会把号又盗了吧、而且是先交钱后练总有点担心 天龙八部代练任务去哪接的? c语言数组在内存中是怎么分配的? 新天龙八部新区开区做代练要怎么办 天龙八部代练工作室是怎样刷经验的 C语言申请内存? 天龙八部3地宫代练的那么霸道,为什么没人去清了他们? 天龙八部2刷宝代练可信么? 天龙八部代练说1小时能刷500W经验可靠吗那要刷多少怪啊? 胚胎养囊成功率 在试管当中什么叫养囊,那养囊好不