C++里面extern “c” {}的作用

来源:互联网 发布:php function use 编辑:程序博客网 时间:2024/05/21 11:23

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分配内存空间。