首页 > 试题广场 >

外部变量可以供其所在的程序文件中的任何函数使用。 (

[单选题]
外部变量可以供其所在的程序文件中的任何函数使用()
  • 正确
  • 错误
A
全局变量也称为外部变量,它是在函数外部定义的变量,其作用域是从定义该变量的位置开始至源文件结束。全局变量不受作用域的影响(也就是说,全局变量的生命期一直到程序的结束)。
  • 如果在一个文件中使用extern关键字来声明另一个文件中存在的全局变量,那么这个文件可以使用这个数据。
  • 在全局变量前加一个static,使该变量只在这个源文件中可用,称之为全局静态变量。
编辑于 2021-10-15 21:07:51 回复(10)
我觉得,应该从外部变量定义的位置开始算
发表于 2021-01-09 10:21:03 回复(2)
解析:这里不能考虑extern关键字,因为说了"【供其所在的】程序文件中"。此外,题目说了能供任意函数使用,也就是说,该变量是先定义好了,再使用。没定义好谈何使用呢。
也就是说,一个文件内的外部变量,是否能供该文件中所有的函数使用呢?
这里就有一个理解上的问题,就是外部变量是不是我们理解的函数外边的变量或者全局变量,这也是不严谨的地方。如果仅仅是外边的变量,则是有作用域的限制,这与前面矛盾,所以题目所说的外部变量应该指的是全局变量。
1、对于C而言,全局变量与局部变量重名时,局部变量优先。这就可能导致无法使用全局变量。答案是错的
2、对于C++而言,全局变量与局部变量重名时,可以加作用域运算符,指定使用那个变量。答案是正确的
发表于 2022-11-29 22:51:11 回复(0)
错误,
应该是从外部变量定义的行之后都可以使用。
发表于 2020-08-20 09:18:39 回复(1)
选择A。
全局变量也称为外部变量,它是在函数外部定义的变量。 它不属于哪一个函数,它属于一个源程序文件。其作用域是从定义该变量的位置开始至源文件结束。
全局变量是在所有函数体的外部定义的,程序的所在部分(甚至其它文件中的代码)都可以使用。
发表于 2019-10-16 18:15:11 回复(0)
有问题,局部变量和全局变量重名了以局部变量为准……
发表于 2019-10-22 21:02:04 回复(3)
如果是类里面的静态成员函数呢
发表于 2020-08-26 12:20:14 回复(0)

如果是个类,里面有私有变量呢

发表于 2020-03-24 07:33:14 回复(0)
在外部变量定义之后,如果有同名的变量则以最近的作用域的同名变量为准
发表于 2022-10-25 21:07:51 回复(0)
应该是定义后才能使用。
发表于 2022-10-18 18:34:34 回复(0)
被extern 修饰后才能被 全文件使用吧
发表于 2022-09-15 08:56:54 回复(1)
新知识又涨了
发表于 2022-03-26 20:30:27 回复(1)

发表于 2020-08-20 14:10:38 回复(2)

非const变量被const函数调用也可以?

发表于 2019-12-01 12:00:10 回复(2)