Job*_*obs -1 c terminology global-variables extern
在 c 中,在我看来,在函数之外编写的所有内容都已经是“extern”了。那么,究竟何时必须将变量指定为 extern?
它与定义与声明有关吗?
此外,是否需要使用 extern 声明变量才能访问已在另一个文件中定义的变量?
该EXTERN扩展能见度到整个项目,由外扩的变量,我们可以使用变量在程序的任何地方提供的,我们知道他们的声明和变量定义的地方。
默认情况下,文件范围内(不在其他文件中)的变量声明是外部的。
在 c 中,在我看来,在函数之外编写的所有内容都已经是“extern”了。那么,究竟何时必须将变量指定为 extern?
这对于 c 很可能是正确的functions
默认情况下,C 函数的声明和定义都带有“extern”前缀
例如有一个文件命名file1.c和声明函数 lilke
int my_function();
Run Code Online (Sandbox Code Playgroud)
extern开头有一个隐藏的礼物,编译器将其视为如下。
extern int my_function();
Run Code Online (Sandbox Code Playgroud)
因此,每当我们定义一个 C 函数时,在函数定义的开头都会出现一个 extern。
对于C变量
在定义一个函数时,我们可以在它前面加上 extern 没有任何问题。但C 变量并非如此。
如果我们将externin 变量的存在作为默认值,则永远不会为它们分配内存,它们只会被声明。因此,extern当我们想声明它们而不定义它们时,我们显式地放置了for C 变量。`