extern c
extern "C"
{
}
指示编译器,这部分代码按照c语言的格式编译,而不是C++。
下图是没有加入extern "C"的编译结果:
下图是加入extern "C"的编译结果:
extern "C"的目的:实现c与c++及其他语言的混合编程。
应用场景:
1. C++调用C。
在C++中引用C的函数或变量,在包含c头文件时,需这样处理
1 extern "C" 2 { 3 #include "c.h" 4 }
2. c调用C++
使用方式:
1. 单一语句
extern "C" void func();
2. 复合语句
1 extern "C" 2 { 3 double sqrt(double); 4 int min(int, int); 5 }
3. 可以包含头文件,相当于头文件中的生命都加了extern "C"
1 extern "C" 2 { 3 #include <hello.h> 4 }