資料介紹
12.3 在C‘ target=’_blank‘ style=’cursor:pointer;color:#D05C38;text-decoration:underline;‘》C++中使用C頭文件
本節(jié)描述如何在C++代碼中使用C頭文件。從C++調(diào)用C頭文件之前,C頭文件必須包含在extern “C”命令中。本節(jié)包含以下兩部分內(nèi)容:
· 在C++中使用系統(tǒng)的C頭文件;
· 在C++中使用自定義的C頭文件。
12.3.1 在C++中使用系統(tǒng)C頭文件
要包括標(biāo)準(zhǔn)的系統(tǒng) C 頭文件,如 stdio.h,不必進(jìn)行任何特殊操作。只有使用extern “C” 命令,由編譯器自動(dòng)包含標(biāo)準(zhǔn) C 頭文件。例如:
#include 《stdio.h》
int main()
{
。.. // C++ 代碼
return 0;
}
如果使用此語法包含頭文件,則所有庫名都放在全局命名空間中。
C++標(biāo)準(zhǔn)規(guī)定可以通過特定的C++頭文件獲取C頭文件。這些文件與標(biāo)準(zhǔn)C頭文件一起安裝在install_directory\RVCT\Data\2.0\build_num \include \platform目錄下,可以用常規(guī)方法進(jìn)行引用。例如:
#include 《cstdio》
int main()
{
。.. // C++ 代碼
return 0;
}
在ARM C++中,這些頭文件中包含(#include)C頭文件。如果使用此語法包含頭文件,則所有C++標(biāo)準(zhǔn)庫名都在命名空間std中定義,包括C庫名。這意味著必須使用下列方法之一來限定所有的庫名稱。
· 指定標(biāo)準(zhǔn)命名空間,例如:
std::printf(“example\n”);
· 使用C++關(guān)鍵字“using”向全局命名空間輸入一個(gè)名稱:
using namespace std;
printf(“example\n”);
· 使用編譯程序選項(xiàng) --using_std。
12.3.2 在C++中使用自定義的C頭文件
要包含自己的C頭文件,用戶必須將#include命令包在extern “C”語句中??梢杂靡韵路椒ㄍ瓿纱瞬僮鳎?br /> ?、?在#include文件之前使用extern,如下例所示。
// C++ code
extern “C” {
#include “my-header1.h”
#include “my-header2.h”
}
int main()
{
// 。..
return 0;
}
· 將extern “C”語句添加到頭文件,如下例所示。
/* C header file */
#ifdef __cplusplus /* Insert start of extern C construct */
extern “C” {
#endif
/* Body of header file */
#ifdef __cplusplus /* Insert end of extern C construct */
} /* The C header file can now be */
#endif /* included in either C or C++ code. */
?
本節(jié)描述如何在C++代碼中使用C頭文件。從C++調(diào)用C頭文件之前,C頭文件必須包含在extern “C”命令中。本節(jié)包含以下兩部分內(nèi)容:
· 在C++中使用系統(tǒng)的C頭文件;
· 在C++中使用自定義的C頭文件。
12.3.1 在C++中使用系統(tǒng)C頭文件
要包括標(biāo)準(zhǔn)的系統(tǒng) C 頭文件,如 stdio.h,不必進(jìn)行任何特殊操作。只有使用extern “C” 命令,由編譯器自動(dòng)包含標(biāo)準(zhǔn) C 頭文件。例如:
#include 《stdio.h》
int main()
{
。.. // C++ 代碼
return 0;
}
如果使用此語法包含頭文件,則所有庫名都放在全局命名空間中。
C++標(biāo)準(zhǔn)規(guī)定可以通過特定的C++頭文件獲取C頭文件。這些文件與標(biāo)準(zhǔn)C頭文件一起安裝在install_directory\RVCT\Data\2.0\build_num \include \platform目錄下,可以用常規(guī)方法進(jìn)行引用。例如:
#include 《cstdio》
int main()
{
。.. // C++ 代碼
return 0;
}
在ARM C++中,這些頭文件中包含(#include)C頭文件。如果使用此語法包含頭文件,則所有C++標(biāo)準(zhǔn)庫名都在命名空間std中定義,包括C庫名。這意味著必須使用下列方法之一來限定所有的庫名稱。
· 指定標(biāo)準(zhǔn)命名空間,例如:
std::printf(“example\n”);
· 使用C++關(guān)鍵字“using”向全局命名空間輸入一個(gè)名稱:
using namespace std;
printf(“example\n”);
· 使用編譯程序選項(xiàng) --using_std。
12.3.2 在C++中使用自定義的C頭文件
要包含自己的C頭文件,用戶必須將#include命令包在extern “C”語句中??梢杂靡韵路椒ㄍ瓿纱瞬僮鳎?br /> ?、?在#include文件之前使用extern,如下例所示。
// C++ code
extern “C” {
#include “my-header1.h”
#include “my-header2.h”
}
int main()
{
// 。..
return 0;
}
· 將extern “C”語句添加到頭文件,如下例所示。
/* C header file */
#ifdef __cplusplus /* Insert start of extern C construct */
extern “C” {
#endif
/* Body of header file */
#ifdef __cplusplus /* Insert end of extern C construct */
} /* The C header file can now be */
#endif /* included in either C or C++ code. */
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- KEIL中使用C++注意事項(xiàng) 1次下載
- 高質(zhì)量C++/C編程指南 33次下載
- C和C++實(shí)物精選《C專家編程》 0次下載
- C和C++經(jīng)典著作《C和指針》 0次下載
- IAR中使用C++做開發(fā)語言,更加簡單高效
- 單片機(jī)-頭文件
- C++ Socket網(wǎng)絡(luò)編程大全源代碼下載 27次下載
- ADXL362示例C代碼和頭文件
- 高質(zhì)量C++和C編程指南資料說明 2次下載
- 汽車車牌識(shí)別系統(tǒng)的C++源代碼和工程文件免費(fèi)下載 2次下載
- 單片機(jī)的C51頭文件到底是什么意思
- c280x / c2801x C / C++頭文件和外周 實(shí)例快速啟動(dòng) 7次下載
- C281x C/C++ 頭文件和外設(shè)示例快速啟動(dòng) 3次下載
- C/C++頭文件大全 0次下載
- 高質(zhì)量c++ c編程指南pdf
- OpenCV圖像識(shí)別C++代碼 5.8k次閱讀
- C/C++中兩種宏實(shí)現(xiàn)方式 1.2k次閱讀
- C++簡史:C++是如何開始的 1.5k次閱讀
- C語言必備知識(shí)頭文件包含 3.1k次閱讀
- C語言和C++語言的前世今生 1k次閱讀
- C 語言的頭文件路徑位置問題 7.5k次閱讀
- 使用C++編寫通用庫并在 Rust 中使用它 (WASI) 2k次閱讀
- 模版定義一定要寫在頭文件中嗎? 2.3k次閱讀
- C語言頭文件路徑的剖析 3.1k次閱讀
- C與C++混合編程是什么 2.9k次閱讀
- 如何在Vitis HLS中使用C語言代碼創(chuàng)建AXI4-Lite接口 2.8k次閱讀
- C語言的頭文件組織與包含原則 4.1k次閱讀
- 虛擬機(jī):使用cscope瀏覽C++文件 2.5k次閱讀
- C語言的源代碼文件和目標(biāo)文件與可執(zhí)行文件的詳細(xì)介紹 9.6k次閱讀
- C語言中程序員編寫的頭文件和編譯器自帶的頭文件 8.5k次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動(dòng)汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論