在c++调用c或者c调用c++时,头文件中声明的函数必须使用'extern "C"进行修饰,这样才能正常编译使用。可用于c和c++混合编程。
(1) 被extern限定的函数或变量是extern类型的
(2) 被extern "C"修饰的变量和函数是按照C语言方式编译和连接的;
当c++编译器遇到该修饰符时在生成目标代码时,会把被修饰的函数和变量按照c语言习惯来生成标识符。以便被c程序能够正常调用c++语言或者库。
当c++调用c程序时,遇到该修饰符时,会按照c语言的习惯去查找相应的标识符并调用之,以便c++程序可以调用c语言函数和库。