一、意義
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
浙公網安備 33010602011771號