6.extern “c”
生活随笔
收集整理的這篇文章主要介紹了
6.extern “c”
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
extern “c”?
在C++語言中支持函數的重載特性,在編譯生成的匯編代碼中,會對函數名字進行一些處理(通常稱為函數名字改編),如加入函數的參數類型或者返回類型等。 而在C語言中,卻只是簡單的修改一下函數名稱而已,并不加入其他的信息。
?
Int func(int demo);
Int func(double demo);
?
C語言無法區分上面兩個函數的不同,因為C語言編譯器產生的函數名字都是_func,而C++編譯器產生的可能是_fun_Fi和_func_Fd ,這樣就很好的區分函數。
因此在C/C++混合編譯的情況下,extern “c”?塊的作用就是告訴C++編譯器這段代碼要按照C語言的標準進行編譯,以盡可能的保持C++和C語言的兼容性。
總結
以上是生活随笔為你收集整理的6.extern “c”的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 6.MYSQL视图的使用和管理
- 下一篇: 1.Ping 的实现协议及原理