前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >6.7 变量的存储方式和生存期

6.7 变量的存储方式和生存期

作者头像
小林C语言
发布2019-08-19 11:01:02
5670
发布2019-08-19 11:01:02
举报

为了让大家有个明确的学习方向,请大家分享给有需要的人,谢谢!

一、动态存储方式与静态存储方式

C语言中,每一个变量和函数都有两个属性:数据类型和数据的存储类别

从变量值存在的时间来观察,变量的存储有两种方式静态存储方式和动态存储方式

二、局部变量的存储类别

(1)自动变量(auto变量)

函数中的局部变量,如果不专门声明为static(静态)存储类别,都是动态地分配存储空间 的。在调用该函数时,系统会给这些变量分配存储空间,在函数调用结束时就自动释放这 些存储空间,因此这类局部变量称为自动变量

注意:关键字“auto”可以省略,不写auto则隐含指定为“自动存储类别”

(2)静态局部变量(static局部变量)

作用:局部变量的值在函数调用结束后不消失而继续保留原值

(3)寄存器变量(register)

为了提高执行效率,允许将局部变量的值放在CPU中的寄存器中,需要用时直接从寄存器 去除参加运算,不必再到内存中去存取,这种变量叫做寄存器变量

三、全局变量的存储类别

(1)在一个文件内扩展外部变量的作用域

如果由于某种考虑,在定义点之前的函数需要引用该外部变量,则应该在引用之前用关键 字extern对该变量作“外部变量声明”,表示把该外部变量的作用域扩展到此位置

(2)将外部变量的作用域扩展到其他文件

(3)将外部变量的作用域限制在本文件中

原创不易,未经本公众号允许禁止转载,否则追究法律责任

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-10-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 C语言入门到精通 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为了让大家有个明确的学习方向,请大家分享给有需要的人,谢谢!
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档