外部函数:Extern

外部函数的关键字是可以省略的 作用域是全局的(所有源文件可用)

  1. extern void HibariFunction(int a)
  2. {
  3. printf("这是一个外部函数");
  4. }
  5. void HibariFunction(int a)
  6. {
  7. printf("这也是一个外部函数");
  8. }
主源文件 次源文件
#include <stdio.h>

void **Hibari();**
int main()
{
**Hibari();**
return 0;
}
#include <stdio.h>

void **Hibari()**
{
printf("第二个源文件里的函数");
}
例如上述例子,主源文件就调用次源文件的函数

内部函数:Static

作用域仅限于【当前源文件】的函数,【其他源文件】是调用不到的 (无论是否声明) (定义在头文件中是可以用的)

  1. static void Hibari()
  2. {
  3. printf("这是一个静态函数");
  4. }