勵志

勵志人生知識庫

extern c的作用

extern "C"的主要作用是解決C++和C語言在函式名編碼上的差異,使C++代碼能夠正確地調用C語言編寫的函式。

在C++中,編譯器為了支持函式重載,會在編譯後的代碼中將函式的參數類型等信息加入到函式名中。而在C語言中,編譯器不會在函式名中加入參數類型信息。因此,當C++代碼需要調用C語言編寫的函式時,由於編碼方式的差異,直接調用可能會導致連結錯誤。使用extern "C"聲明後,編譯器會按照C語言的編碼方式處理這些函式,即在編譯後的代碼中僅保留函式名,而不加入參數類型信息,這樣就可以實現C++和C語言之間的正確調用。