全局变量作用域
在一个C语言源程序文件中所定义的全局变量,其作用域为:A)所在文件的全部范围B)所在程序的全部范围C)所在函数的全部范围D)由具体定义位置和extern说明来决定范围答案...
在一个
C
语言源程序文件中所定义的全局变量,其作用域为:
A) 所在文件的全部范围
B) 所在程序的全部范围
C) 所在函数的全部范围
D) 由具体定义位置和extern 说明来决定范围
答案上选的C 不过为什么
百度定义是从定义变量的位置到本程序文件结束 展开
C
语言源程序文件中所定义的全局变量,其作用域为:
A) 所在文件的全部范围
B) 所在程序的全部范围
C) 所在函数的全部范围
D) 由具体定义位置和extern 说明来决定范围
答案上选的C 不过为什么
百度定义是从定义变量的位置到本程序文件结束 展开
3个回答
展开全部
选择B。
全局变量在程序的全部范围内都有效。
所在函数的全部范围是函数内定时的static变量。
按正常情况来说,静态全局变量的作用域从定义的地方到本文件的结束,而前面的extern int a声明究竟对应哪个,就看编译器如何来识别了。如果同一个源文件中,只有一个主函数,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即它不起作用。
扩展资料:
1,使用全局变量会占用更多的内存(因为其生命期长),不过在计算机配置很高的今天,这个不应该算什么问题,除非使用的是巨大对象的全局变量,能避免就一定要避免。
2,使用全局变量程序运行时速度更快一些(因为内存不需要再分配),同样也快不了多少。
3,对于局部变量的名字空间污染,这个在不使用太多变量时是可以避免的。
4,当全局变量与局部变量重名的时候,起作用的是局部变量,全局变量被屏蔽掉。
参考资料来源:百度百科-全局变量
Storm代理
2023-08-29 广告
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询