关于extern "C"的使用
extern "C"用于c,c++混合编程的问题,他的使用分为两个方式,
1、当c++中调用c文件定义的函数时;需要将c函数或者c头文件用 extern "C"来修饰,以告诉编译器用c的方式寻找这些函数;比如
extern "C" int fun1(int a, int b);
extern "C"{
int fun2(int a, int b);
int fun3(int a, int b);
}
extern "C" {
#include "a.h
}
2、当c调用c++文件中定义的函数时;因为extern "C"是C++定义的关键字,c不支持,因此如果可以预知接口需要被c语言调用,那么在c++中需要将接口定义前加上 extern "C" int fun(int a, int b) , 然后在c文件中用extern int fun(int a, int b) 声明即可,注意这个声明里没有"C"