【发布时间】:2013-06-19 03:57:57
【问题描述】:
static 是全局变量的默认存储类。下面的两个变量(Count 和Road)都有static 存储类。
static int Count;
int Road;
int main()
{
printf("%d\n", Road);
return 0;
}
我的问题是:如果默认全局变量是static(这意味着我们将该全局变量的范围限制在特定的.c文件中)那么我们如何extern另一个文件中的那些变量?
这个问题对你们中的许多人来说可能非常基础,但我真的很困惑,想了解正确的细节。
【问题讨论】:
-
你的第一句话是假的。在文件范围内声明为
static的变量不是全局变量。 -
您的来源有误。默认情况下,在文件范围内声明的变量和函数具有
extern存储类(尽管这给了它们静态duration)。static关键字为它们提供了静态存储类。 -
@hobbs:在文件范围内声明为外部链接和静态存储持续时间的对象。
标签: c