在一个C源程序文件中所定义的全局变量,其作用域为

admin2019-12-17  25

问题 在一个C源程序文件中所定义的全局变量,其作用域为

选项 A、由具体定义位置和extern说明来决定范围
B、所在程序的全部范围
C、所在函数的全部范围
D、所在文件的全部范围

答案A

解析 全局变量是在函数外部任意位置上定义的变量,它的作用域是从变量定义的位置开始,到整个源文件结束止。在同一编译单位内用extern说明符扩展全局变量的作用域(当全局变量定义在后,引用它的函数在前时,应该在引用它的函数中用extern对此全局变量进行说明,以便通知编译程序:该变量是一个已在外部定义了的全局变量,已经分配了存储单元,不需要再为它分配存储单元。这时全局变量的作用域从extern说明处起,延伸到该函数末尾)。当一个程序由多个编译单位构成,并且在每个文件中均需要引用同一个全局变量,这时只在其中一个文件中定义所有的全局变量,而在其他用到这些全局变量的文件中用extern对这些变量进行说明。
转载请注明原文地址:https://jikaoti.com/ti/gvG0FFFM
0

最新回复(0)