C++里面extern “c” {}的作用
extern "C"表示编译生成的内部符号名使用C约定
例如:int Fun(int i,int j)
C:_Fun
C++:_Fun_int_int
当我们想从C++中调用C的库时,不能仅仅说明一个外部函数,因为调用C函数的编译代码和调用C++函数的编译代码是不同的。如果你仅说明一个外部函数, C++编译器假定它是C++的函数编译成功了,但当你连接时会发现错误。
解决的方法就是指定它为C函数:
extern"c" 函数描述
指定一群函数的话:
extern"C"{
n个函数描述
}
extern int a; 仅仅是一个变量的声明,其并不是在定义变量a,并未为a分配内存空间。