使用了extern修饰了的变量只能在一个地方定义,其它地方都必须仅仅是声明。
举例,有a.c 和b.c两个文件;
a.c中 extern int n = 1;
那么b.c中引用这个n,只能声明:extern int n; 而不能定义extern int n = 2;
同样的,对于数组类型,也只能在一处定义,其余处声明,注意数组的声明方式:
int arr[];即[]表示这是个数组,但不写大小。