學(xué)習(xí)啦 > 學(xué)習(xí)英語 > 專業(yè)英語 > 計(jì)算機(jī)英語 > c語言include的用法

c語言include的用法

時間: 長思709 分享

c語言include的用法

  C語言預(yù)處理器指令#include用于在編譯期間把制定文件的內(nèi)容包含進(jìn)當(dāng)前文件中,又稱文件包含指令。在源文件中,任何形如#include "文件名"或#include <文件名>。下面我們來看看c語言include的用法。
  1 iostream與iostream.h的區(qū)別:
  #include <iostream.h> // 這個就是1998年標(biāo)準(zhǔn)化以后的標(biāo)準(zhǔn)頭文件
  #include <iostream> // 這個就是標(biāo)準(zhǔn)化以前的頭文件
  更本質(zhì)上的區(qū)別就是iostream把標(biāo)準(zhǔn)C++庫的組件放在一個名位std的namespace里面。而相對的iostream.h則將這些標(biāo)準(zhǔn) 組件放在全局空間里,同時在標(biāo)準(zhǔn)化以后舊有的C標(biāo)準(zhǔn)庫也已經(jīng)經(jīng)過改造了。 使用前者,就需要在代碼中添加語句:using namespace std;
  即:#include <iostream.h> ==#include <iostream>+ using namespace std;
  2 #include、#include<xxx.h> 與#include “xxx.h”的區(qū)別:
  1>,#include<xxx.h>:系統(tǒng)自帶的頭文件用尖括號括起來,這樣編譯器會在系統(tǒng)文件目錄下查找。
  2>,#include “xxx.h”:用戶自定義的文件用雙引號括起來,編譯器首先會在用戶目錄下查找,然后在到C++安裝目錄(比如VC中可以指定和修改庫文件查找路徑,Unix和Linux中可以通過環(huán)境變量來設(shè)定)中查找,最后在系統(tǒng)文件中查找。
  3 #ifndef /#define/ #endif避免頭文件的重定義
  在一個大的軟件工程里面,可能會有多個文件同時包含一個頭文件,當(dāng)這些文件編譯鏈接成一個可執(zhí)行文件時,就會出現(xiàn)大量“重定義”的錯誤。在頭文件中實(shí)用#ifndef #define #endif能避免頭文件的重定義。
  方法:例如要編寫頭文件test.h
  在頭文件開頭寫上兩行:
  #ifndef _TEST_H
  #define _TEST_H//一般是文件名的大寫
  頭文件結(jié)尾寫上一行:
  #endif
  這樣一個工程文件里同時包含兩個test.h時,就不會出現(xiàn)重定義的錯誤了。
  分析:當(dāng)?shù)谝淮伟瑃est.h時,由于沒有定義_TEST_H,條件為真,這樣就會包含(執(zhí)行)#ifndef _TEST_H和#endif之間的代碼,當(dāng)?shù)诙伟瑃est.h時前面一次已經(jīng)定義了_TEST_H,條件為假,#ifndef _TEST_H和#endif之間的代碼也就不會再次被包含,這樣就避免了重定義了。
512844