为了账号安全,请及时绑定邮箱和手机立即绑定

关于变量储存方式

首先是静态变量,静态变量是不是相当于一直存在,随取随用?还有就是在一个函数里面,如果有循环不断取用这个静态变量,是不是循环一次,这个变量变一次,第二次循环是用这个变了的变量?

其次是extern这个外部的,是不是意思就是提取外部静态变量?

动态变量和存储器变量又该怎样理解?

求大佬解答,万分感谢!!!



正在回答

2 回答

静态变量贯穿整个程序的生命周期,而不会随着函数调用完而消失。extern如果是局部的就是用全局变量,如果是全局的就可以调用其他源文件的全局变量。动态全局变量,作用域为整个项目,贯穿整个运行时间。静态全局变量,作用域为当前文件,贯穿整个运行时间。动态局部变量,作用域为当前函数,生命周期为从函数调用到函数退出。 静态局部变量,作用域为当前函数,贯穿整个运行时间,当下次函数调用时,静态局部变量不会被再次初始化,而是沿用上次函数退出时的值。


8 回复 有任何疑惑可以回复我~

静态变量是一直存在的,只赋一次初始值。extern可以提取函数外任何变量。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926212    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

关于变量储存方式

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信