一、意义

  Extern "C":告诉编译器,这部分代码按C语言的方式进行编译,而不是C++的。

   _cplusplus:.cpp文件默认定义的宏。用来判断是否为.cpp文件。

二、应用场合

1,extern "C"修饰函数声明:

    在一个既有.c文件,又有.cpp文件的工程中,当.c文件中调用或使用了.cpp文件中的函数、

变量为避免编译时的不兼容,在 .cpp对应的头文件中要加入:

#ifdef __cplusplus      //  如果是cpp文件,

extern "C"{       //   则采用C语言方式进行编译

#endif

 

… //其他代码

 

#ifdef __cplusplus

}

#endif

 2,extern "C"修饰头文件:

    包含头文件时,相当于头文件中的函数声明都加了extern "C",都按照C语言方式进行编译。

  一般在 .cpp文件包含.c文件的头文件时使用。

    

 

参考链接:https://blog.csdn.net/gao1440156051/article/details/52073925

posted on 2018-08-09 20:37  一只努力的小仙女  阅读(1022)  评论(0编辑  收藏  举报