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