extern 是用来声明 变量或者函数是外部定义的
注意所谓外部是指当前C程序以外的文件中(不含直接对应的头文件)
这里需要理清变量、函数有效范围就好理解这个声明关键字的作用啦。
一般没有特殊声明(即用extern关键字)定义的变量或者函数 ,默认的有效范围都是当前文件,这对于大型工程中多文件协同开发就不利与特殊数据交换,所以引入了extern来指定个别的变量或者函数可以在其定义文件外进行访问。
需要注意,这里的extern是用在需要访问外部变量或者函数的文件中,原始定义的文件中并不需要它。
我主要是用在头文件中,对变量或者函数进行申明,这样其他文件只要include这个头文件,就可以调用此函数或者变量。
比如:extern void function();