全局变量作用域

在一个C语言源程序文件中所定义的全局变量,其作用域为:A)所在文件的全部范围B)所在程序的全部范围C)所在函数的全部范围D)由具体定义位置和extern说明来决定范围答案... 在一个
C
语言源程序文件中所定义的全局变量,其作用域为:
A) 所在文件的全部范围
B) 所在程序的全部范围
C) 所在函数的全部范围
D) 由具体定义位置和extern 说明来决定范围
答案上选的C 不过为什么
百度定义是从定义变量的位置到本程序文件结束
展开
 我来答
帐号已注销
2021-02-08 · TA获得超过77.1万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:166万
展开全部

选择B。

全局变量在程序的全部范围内都有效。

所在函数的全部范围是函数内定时的static变量。

按正常情况来说,静态全局变量的作用域从定义的地方到本文件的结束,而前面的extern int a声明究竟对应哪个,就看编译器如何来识别了。如果同一个源文件中,只有一个主函数,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即它不起作用。

扩展资料:

1,使用全局变量会占用更多的内存(因为其生命期长),不过在计算机配置很高的今天,这个不应该算什么问题,除非使用的是巨大对象的全局变量,能避免就一定要避免。

2,使用全局变量程序运行时速度更快一些(因为内存不需要再分配),同样也快不了多少。

3,对于局部变量的名字空间污染,这个在不使用太多变量时是可以避免的。

4,当全局变量与局部变量重名的时候,起作用的是局部变量,全局变量被屏蔽掉。

参考资料来源:百度百科-全局变量

Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
风雷九州
推荐于2016-08-20 · TA获得超过3025个赞
知道大有可为答主
回答量:1127
采纳率:100%
帮助的人:430万
展开全部
应该选择B

全局变量在程序的全部范围内都有效。

所在函数的全部范围是函数内定时的static变量。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bbbHK2
2018-02-10
知道答主
回答量:2
采纳率:0%
帮助的人:1752
展开全部
全局变量的作用域是从声明处到文件的结束。所以选择D)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式