extern用于全局符号表,就是那些 全局变量 函数 之类的声明。。符号表是为了多个源文件 可以共享变量 函数等等,同一个文件不存在这个问题的。。
对于这个问题,请参考c和指针的链接属性部分有详解。
通过extern链接属性的标示符无论声明多少次,位于多少个文件都表示同一个实体。
extern一般用于源文件中,所以不用包含文件。
首先extern是对全局变量操作的
例如一个工程里边有好多c文件,在某一个c文件里定义了全局变量(int a;)
那么在其他c文件可以直接引用(extern int a;)