全局变量都是静态存储吗

 我来答
我是兰州农民
推荐于2016-09-11 · TA获得超过2703个赞
知道小有建树答主
回答量:459
采纳率:0%
帮助的人:207万
展开全部
首先,全局变量不可能是静态的。static 只是定义局部变量,使其在函数调用结束后不释放存储空间,使下一次调用该函数时继续使用上一次调用的结果,这点经常用到。

再者,对于全局变量来说,如果在其定义后的接下来的程序中,某函数用到了与其同名的变量,则在该变量所在函数中,全局变量被屏蔽,无法使用。

当然全局变量在实质上是静态存储的!!
我的意思是它无法用static声明,就算在某些编译器上是允许的,但没有任何意义。
1、全局变量所占存储空间在整个程序运行过程中都不会释放,而声明变量为static的目的恰恰就是为了达到这点,因此是否声明为static无意义。
2、”用static声明局部变量“的目的是使局部变量在调用完函数后仍不释放空间,而全局变量完全能做到这点。(当然,能不用试最好不要去用全局变量,它会造成很多干扰)
3、全局变量当然可以在“它所作用的区域里的”任何一个函数中改变它的值,但前提是:
<1>在哪个函数中没有与它名称相同的变量(这其实就是全局变量的问题之一),否则就会造成”屏蔽“。
<2>全局变量的作用区域只在它所声明的位置之后的所有程序中!
Storm代理
2023-07-25 广告
StormProxies是一家提供动态代理服务器服务的企业,旨在帮助用户更好地管理网络访问和安全。以下是一些关于StormProxies的IP动态代理服务的特点:1. 高匿名性:StormProxies的动态代理服务器具有高匿名性,可以有效... 点击进入详情页
本回答由Storm代理提供
别玩哥
2012-03-11 · 超过30用户采纳过TA的回答
知道答主
回答量:83
采纳率:0%
帮助的人:89万
展开全部
是的 全局变量都是静态存储
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式