extern
可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。
extern 修饰变量
只能修饰未被 static修饰的全局变量,表明此变量可供其他文件调用。如:
a.c中定义数组a extern int a[8];
可在b.c中声明 extern a[8]; 此a数组就可在b.c 中用了
extern 修饰函数
如果函数的声明中带有关键字
extern
,仅仅是暗示这个函数为外部函数可能在别的源文件里定义,没有其它作用。
C语言规定,如果在定义函数时省略extern,则隐含 为外部函数。