extern “C”

  • 被 extern 限定的函数或变量是 extern 类型的
  • extern "C" 修饰的变量和函数是按照 C 语言方式编译和连接的

extern "C" 的作用是让 C++ 编译器将 extern "C" 声明的代码当作 C 语言代码处理,可以避免 C++ 因符号修饰导致代码不能和C语言库中的符号进行链接的问题。

extern “C” 使用

  1. #ifdef __cplusplus
  2. extern "C" {
  3. #endif
  4. void *memset(void *, int, size_t);
  5. #ifdef __cplusplus
  6. }
  7. #endif