C99中规定, 所有顶层的默认存储类标志符都是extern ! 头文件中声明的函数,默认都是extern前缀.但是为了我们程序员方便,我们采取下面的手段: 我个人认为是extern催生了头文件的诞生.在没有头文件的情况下,所有本.c文件引用的外部函数定义,都要在自己.c文件内声明 并且加前缀extern 在代码增多,项目复杂的情况下,这个手段有点粗糙,那么我们把想提供给外部.c文件使用的函数放在头文件中(默认是extern前缀) 那么当其他某个.c文件需要用到这些函数的时候,只要包含了这个头文件