【发布时间】:2012-11-08 17:33:25
【问题描述】:
#include<stdio.h>
int i;
int i;
int main()
{
// int i;
// int i;
printf("%d\n",i);
return 0;
}
~
上面的代码运行没有任何错误gcc -Wall -Werror demo.c -o demo
但是当我取消注释 local i 变量时,注释掉 global i ,它给了我错误。
In function ‘main’:
demo.c:7:6: error: redeclaration of ‘i’ with no linkage
demo.c:6:6: note: previous declaration of ‘i’ was here
这里的本地全局概念是什么?任何人请解释一下。
【问题讨论】:
-
它会给你什么错误?