extern“C声明的作用有哪些?
因为 C 语言和 C++ 语言的编译规则不一样,所以要告诉系统哪些函数是用 C 方式编译,哪些函数需要用 C++ 方式编译。如果你不加 extern "C" ,在编译时,系统会提示找不到此函数。
---------------------------------------------------------------
extern "C"表示编译生成的内部符号名使用C约定
例如:
int Fun(int i,int j)
C:_Fun
C++:_Fun_int_int
具体生成什么可能与编译器有关
由于C++支持重载,而重载是在编译期确定的,所以C++必须在内部符号名上区分各重载函数,所以就将参数类型加在函数名后。
本文地址:http://www.45fan.com/a/question/67601.html