
關(guān)于C語(yǔ)言編程中include的用法
1iostream與iostream.h的區(qū)別:
#include
#include
更本質(zhì)上的區(qū)別就是iostream把標(biāo)準(zhǔn)C++庫(kù)的組件放在一個(gè)名位std的namespace里
面。而相對(duì)的iostream.h則將這些標(biāo)準(zhǔn)組件放在全局空間里,同時(shí)在標(biāo)準(zhǔn)化以后舊有的C
標(biāo)準(zhǔn)庫(kù)也已經(jīng)經(jīng)過改造了。使用前者,就需要在代碼中添加語(yǔ)句:usingnamespacestd;
即:#include
2#include、#include
1>,#include
下查找。
2>,#include“xxx.h”:用戶自定義的文件用雙引號(hào)括起來(lái),編譯器首先會(huì)在用戶目錄下查
找,然后在到C++安裝目錄(比如VC中可以指定和修改庫(kù)文件查找路徑,Unix和Linux
中可以通過環(huán)境變量來(lái)設(shè)定)中查找,最后在系統(tǒng)文件中查找。
3#ifndef/#define/#endif避免頭文件的重定義
在一個(gè)大的軟件工程里面,可能會(huì)有多個(gè)文件同時(shí)包含一個(gè)頭文件,當(dāng)這些文件編譯鏈接
成一個(gè)可執(zhí)行文件時(shí),就會(huì)出現(xiàn)大量“重定義”的錯(cuò)誤。在頭文件中實(shí)用#ifndef#define
#endif能避免頭文件的重定義。
方法:例如要編寫頭文件test.h
在頭文件開頭寫上兩行:
#ifndef_TEST_H
#define_TEST_H//一般是文件名的大寫
頭文件結(jié)尾寫上一行:
#endif
這樣一個(gè)工程文件里同時(shí)包含兩個(gè)test.h時(shí),就不會(huì)出現(xiàn)重定義的錯(cuò)誤了。
分析:當(dāng)?shù)谝淮伟瑃est.h時(shí),由于沒有定義_TEST_H,條件為真,這樣就會(huì)包含(執(zhí)
行)#ifndef_TEST_H和#endif之間的代碼,當(dāng)?shù)诙伟瑃est.h時(shí)前面一次已經(jīng)定義了
_TEST_H,條件為假,#ifndef_TEST_H和#endif之間的代碼也就不會(huì)再次被包含,這樣
就避免了重定義了。
本文發(fā)布于:2023-03-07 19:55:40,感謝您對(duì)本站的認(rèn)可!
本文鏈接:http://www.newhan.cn/zhishi/a/16781901405691.html
版權(quán)聲明:本站內(nèi)容均來(lái)自互聯(lián)網(wǎng),僅供演示用,請(qǐng)勿用于商業(yè)和其他非法用途。如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除。
本文word下載地址:include.doc
本文 PDF 下載地址:include.pdf
| 留言與評(píng)論(共有 0 條評(píng)論) |