常用寫法
#ifdef __cplusplus //如果使用C++編譯器(有__cplusplus宏定義)
extern "C" { //告訴C++編譯器按照C的名稱修飾規則來處理函式名和變數名
#endif /* __cplusplus */
// 這裡是C語言的函式宣告或定義
void myCFunction();
#ifdef __cplusplus
}
#endif /* __cplusplus */
錯誤寫法(假設確實是用的C編譯器,那麼extern "C" {}的內容都不會被執行)
#ifdef __cplusplus
extern "C" {
// 這裡是C語言的函式宣告或定義
void myCFunction();
}
#endif /* __cplusplus */