了解C 中需要extern "C" 來包含C 標頭
在C 程式設計領域,有時需要包含用C語言編寫的頭文件。然而,這提出了一個挑戰,因為 C 編譯器希望標頭符合 C 應用程式二進位介面 (ABI)。為了解決這種不匹配問題,extern "C" 指令扮演著至關重要的角色。
何時使用extern "C"{ #include
在C 程式中包含C 頭檔時,會使用extern " C" 指令。它指示編譯器使用 C ABI 而不是 C ABI 來解釋包含的標頭的內容。這允許連結器產生與 C 和 C 程式碼段相容的程式碼。
編譯器/連結器級別說明
在編譯器級別, extern "C" 通知編譯器認為所包含的程式碼區塊應被視為 C 程式碼。這會影響函數和結構的名稱修改,確保它們遵守 C ABI。反過來,連結器可以正確解析符號並產生無縫整合 C 和 C 組件的可執行程式碼。
編譯/連結影響
透過聲明包含使用extern "C" 的C 標頭,編譯器:
中摘要, extern "C"{ #include
以上是為什麼在 C 中包含 C 頭檔時使用 `extern 'C'` ?的詳細內容。更多資訊請關注PHP中文網其他相關文章!