新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > C與匯編的混合編程及C++引用C的函數(shù)庫的方法

        C與匯編的混合編程及C++引用C的函數(shù)庫的方法

        作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
          C與匯編混合編程C語言通過 _asm{}來直接在代碼嵌入?yún)R編,有底層驅(qū)動時,為了效率,經(jīng)常直接嵌入式匯編,一但使用ASM,你程序的可移植性就大大減弱了,這是開發(fā)者要注意問題C++引用C的函數(shù)庫C++引用C的庫函數(shù),必須要對C的庫函數(shù)用, extern "C"對函數(shù)數(shù)聲明進行修飾.這一樣,任何一個寫得比較正規(guī)的庫函數(shù)頭文件都是形如下結(jié)構(gòu)#ifndef __MY_LIB_H__ #define __MY_LIB_H__ #ifdef __cplusplus extern "C" { #endif /* 這一段是函數(shù)聲明的*/ #ifdef __cplusplus } #endif #endif /* __MY_LIB_H__ */其中, #ifndef …… 這一段是防止頭文件被重復(fù)使用#ifdef __cplusplus extern "C" { #endif #ifdef __cplusplus } #endif 表示{}之間的函數(shù)是可以供C++函數(shù)直接引用. 而_cplusplus 宏是編譯內(nèi)置宏,表示是C++編譯器,這樣C編器可以跳過這樣的定義的.以防止發(fā)誤解extern "C" 包含雙重含義,從字面上即可得到:首先,被它修飾的目標(biāo)是“extern”的;其次,被它修飾的目標(biāo)是“C”的。

        關(guān)鍵詞: 匯編混合編程函數(shù)

        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 蓬莱市| 玛纳斯县| 德江县| 宁武县| 吉木乃县| 大姚县| 吉安市| 葵青区| 石首市| 乐至县| 华池县| 嘉荫县| 都昌县| 新和县| 荥经县| 临桂县| 吴川市| 瑞安市| 定远县| 和静县| 武鸣县| 丹东市| 察雅县| 泸西县| 阳新县| 陵水| 沾化县| 五家渠市| 阳江市| 治县。| 江城| 厦门市| 库尔勒市| 南康市| 蒙山县| 伽师县| 外汇| 山西省| 烟台市| 武陟县| 泸州市|