我在 C 文件中定义了一个变量:int x
,并且我知道extern int x
如果我想在其他文件中使用它,我应该使用它在其他文件中声明它。
我的问题是:我应该在哪里声明它在其他文件中?
在所有功能之外,
// in file a.c: int x; // in file b.c: extern int x; void foo() { printf("%d\n", x); }
在将使用它的函数中?
// in file b.c: void foo() { extern int x; printf("%d\n", x); }
我的疑问是:
- 哪一个是正确的?或
- 如果两者都正确,哪个是首选?