extern “C”的作用 C++调用端在调用C写的导出函数时,告诉C++编译器,调用的函数还是采用C规则编译。 不这样写存在的问题 C++编译规则和C编译规则不一样。因为C++中引入了函数重载,所以同样的函数在C和C++中编译结果是不一样的。 比如函数 void add(int a, int b); 在C中编译成 add函数名,而在C++中会被编译成Z8addii函数名。 如果不这样指定,则会出现编译通过,但是链接失败的问题。