預處理器
發現 #include 指令後,就會尋找後跟的檔名並把這個檔案的內容包含到當前檔案中。被包含檔案中的文字將替換源**檔案中的#include指令,就像你把被包含檔案中的全部內容鍵入到原始檔中的這個位置一樣。
#include 指令有兩種使用形式
#include <
stdio.h
> 檔名放在尖括號中
#include 「mystuff.h」 檔名放在雙引號中
尖括號< 和》 括起來表明這個檔案是乙個工程或標準標頭檔案。查詢過程會檢查預定義的目錄,我們可以通過設定搜尋路徑環境變數或命令列選項來修改這些目錄。
如果檔名用一對引號括起來則表明該檔案是使用者提供的標頭檔案,查詢該
檔案時將從當前檔案目錄(或檔名指定的其他目錄)中尋找檔案,然後再在標準位置尋找檔案。
為什麼要包含檔案呢?
因為這些檔案包含了編譯器所需的資訊。例如,
stdio.h
檔案通常包含eof,null,
getchar()和putchar()的定義。
包含大型標頭檔案並不一定顯著增加程式的大小。很多情況下,標頭檔案中的內容是編譯器產生最終**所需的資訊,而不是加到最終**裡的具體語句。
被包含的檔案還可以含有#include 指示符,由於巢狀包含檔案的原因,乙個標頭檔案可能會被多次包含在乙個原始檔中,條件指示符可防止這種標頭檔案的重複處理。
例如:
C include 尖括號和雙引號的區別
這兩種寫法都是正確的寫法,但是它們卻是有區別的。我們知道c 已經有一些編寫好的標頭檔案 比如標準函式庫等等 它們存放在vc 的include資料夾裡。當我們使用 include 檔名 命令時,編譯器就到這個資料夾裡去找對應的檔案。顯然,用這種寫法去包含乙個我們自己編寫的標頭檔案 不在那個includ...
include後尖括號和雙引號的區別
第一種方式 採用 方式,表示讓編譯器在編譯器的預設標準路徑下去搜尋相應的標頭檔案,如果找不到則報錯。例如 vs2015的安裝目錄 microsoft visual studio 14.0 vc include下面就包含了標準庫的標頭檔案。第二種方式 採用 方式,表示先在工程所在路徑下搜尋,如果失敗,...
include中尖括號和雙引號的區別
include 和 include 的區別 一 引用的標頭檔案不同 include 引用的是編譯器的類庫路徑裡面的標頭檔案。include 引用的是你程式目錄的相對路徑中的標頭檔案。二 用法不同 include 用來包含標準標頭檔案 例如stdio.h或stdlib.h include 用來包含非標...