C,C 標頭檔案的作用

2021-06-28 14:08:59 字數 992 閱讀 8217

在c語言家族程式中,標頭檔案被大量使用。一般而言,每個c++/c程式通常由標頭檔案(header files)和定義檔案(definition files)組成。標頭檔案作為一種包含功能函式、資料介面宣告的載體檔案,用於儲存程式的宣告(declaration),而定義檔案用於儲存程式的實現 (implementation)。

c++/c程式的標頭檔案以「.h」為字尾。以下是假設名稱為 graphics.h的標頭檔案:

#ifndef graphics_h (作用:防止graphics.h被重複引用)

#define graphics_h

#include.... (作用:引用標準庫的標頭檔案)

...#include... (作用:引用非標準庫的標頭檔案)

...void function1(...); (作用:全域性函式宣告)

...class box (作用:類結構宣告)

;#endif

從以上例子可以看出,標頭檔案一般由三部分內容組成:(1)標頭檔案開頭處的版權和版本宣告;(2)預處理塊;(3)函式和類結構宣告等。在標頭檔案中,用 ifndef/define/endif結構產生預處理塊,用 #include 格式來引用庫的標頭檔案。標頭檔案的這種結構,是利用c語言進行開發軟體所通常具備的,屬於公有知識。

一般在乙個應用開發體系中,功能的真正邏輯實現是以硬體層為基礎,在驅動程式、功能層程式以及使用者的應用程式中完成的。根據以上示例,可以發現標頭檔案的主要作用在於呼叫庫功能,對各個被呼叫函式給出乙個描述,其本身不包含程式的邏輯實現**,它只起描述性作用,告訴應用程式通過相應途徑尋找相應功能函式的真正邏輯實現**。使用者程式只需要按照標頭檔案中的介面宣告來呼叫庫功能,編譯器會從庫中提取相應的**。

從以上結構圖來看,標頭檔案是使用者應用程式和函式庫之間的橋梁和紐帶。在整個軟體中,標頭檔案不是最重要的部分,但它是c語言家族中不可缺少的組成部分。做乙個不算很恰當的比喻,標頭檔案就像是一本書中的目錄,讀者(使用者程式)通過目錄,可以很方便就查閱其需要的內容(函式庫)。在一本書中,目錄固然重要,但絕對不是一本書的核心的、最重要的部分。

C C 標頭檔案作用

參考 c標頭檔案 由來 那是乙個被遺忘的年代,在編譯器只認識.c cpp 檔案,而不知道.h是何物的年代。那時的人們寫了很多的.c cpp 檔案,漸漸地,人們發現在很多.c cpp 檔案中的宣告語句就是相同的,但他們卻不得不乙個字乙個字地重複地將這些內容敲入每個.c cpp 檔案。但更為恐怖的是,當...

c c 標頭檔案的作用

每個c c程式通常分為兩個檔案。乙個檔案用於儲存程式的宣告 declaration 稱為標頭檔案。另乙個檔案用於儲存程式的實現 implementation 稱為定義 definition 檔案。c c程式的標頭檔案以 h 為字尾,c程式的定義檔案以 c 為字尾,c 程式的定義檔案通常以 cpp 為...

c c 標頭檔案中預編譯的作用

在標頭檔案中加入 ifndef或 ifdef等巨集定義,是為了防止重複宣告。我們知道,標頭檔案一般是用來宣告的,會被其他的原始檔和標頭檔案include,當被多個檔案include的時候就會造成重複宣告。為了使得只宣告一次,引入前面所說的巨集定義,一般以檔名大寫和 來當巨集的名字。這個巨集是給預處理...