extern 声明函数和定义函数

extern 关键字放在函数声明之前:

> test.h

extern int test();

如果这样函数的声明中带有关键字extern,仅仅是暗示这个函数可能在别的源文件里定义。

这样一来,就是在程序中取代include “*.h”来声明函数,在一些复杂的项目中,比较习惯在所有的函数声明前添加extern修饰,以防止遗漏包含头文件而导致的编译错误。

extern 关键字放在函数定义之前:

> test.c

extern int test()

{

return true;

}

如果在函数定义的地方带有关键字extern,表示该函数会提供给外部文件使用,其实有些编译器是默认每个函数都是extern类型的,反之是static类型

参考:

http://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777431.html




你可能感兴趣的:(extern 声明函数和定义函数)