C++調用C

    由於C++的函數簽名與C的函數簽名規則不一樣,前者容許函數重載,使得它的函數簽名必須反映參數的類型和順序,然後者不一樣,只是一個函數名(有些編譯器還要加個下劃線),致使C++調用C函數或是彙編函數時,產生連接錯誤。因此C++擴展了"extern",當調用C函數或是使用C調用約定的彙編時,對於聲明須要添加: 函數

#ifdef __cplusplus
extern "C" {
    // 聲明
}
#endif
    告訴C++編譯器用C簽名改編規則調用C函數。
相關文章
相關標籤/搜索