【发布时间】:2011-10-25 16:49:45
【问题描述】:
我在某处读到,我们只能通过以下方式将全局变量的范围限制为文件 在变量名之前使用 static 关键字。但是,当我实际尝试时,结果是错误的:
//1st file - file1.c //2nd file - file2.h
#include<file2.h> static int a;
main()
{
fun();
}
fun()
{
printf("%d",a);
}
O/P 为 0
现在我们确实有一个在 file2.h 中声明的全局变量 a,其范围仅限于该文件。
因为,我们已经将它声明为静态的,但我们仍然可以在 file1.c 中访问这个变量。怎么样?
【问题讨论】:
-
你在质疑自己的答案吗?? link
标签: c static global-variables