众所周知,C语言是从上向下依次执行的,原则上变量或函数都得先定义再使用,但在实际开发中很多时候需要先使用再定义,这个时候就需要声明了。声明的意思就是告诉编译器我先使用这个变量或函数,你不要报错,定义在后面。extern就是用来声明变量或函数的。声明和定义很容易搞混,下面具体说一下。
1)声明函数
函数的声明和函数的定义的区别是没有函数体,很容易区分,所以对函数的申明用不用extern都一样。在实际开发中,在引用其他的文件里的函数时,为了更加清楚的知道这个函数来自其他文件,就用extern声明。
2)声明变量
变量用extern修饰时,就是声明,不是定义,表示这个变量在其他文件中定义的,或在本文件中还没有定义。