.c
和.h
檔案都是原始檔,除了字尾不一樣便於區分外和管理外,其他的都是相同的,在.c
中編寫的**同樣也可以寫在.h
中,包括函式定義、變數定義、預處理等。
但是,.h 和 .c 在專案中承擔的角色不一樣:.c 檔案主要負責實現,也就是定義函式和變數;.h 檔案主要負責宣告(包括變數宣告和函式宣告)、巨集定義、型別定義等。這些不是c語法規定的內容,而是約定成俗的規範,或者說是長期形成的事實標準。
根據這份規範,標頭檔案可以包含如下的內容:
在專案開發中,我們可以將一組相關的變數和函式定義在乙個 .c 檔案中,並用乙個同名的 .h 檔案(標頭檔案)進行宣告,其他模組如果需要使用某個變數或函式,那麼引入這個標頭檔案就可以。
這樣做的另外乙個好處是可以保護版權,我們在發布相關模組之前,可以將它們都編譯成目標檔案,或者打包成靜態庫,只要向使用者提供標頭檔案,使用者就可以將這些模組鏈結到自己的程式中。
C語言模組化程式設計
c語言模組化程式設計 模組劃分 c語言模組化程式 設計需理解如下概念 1 模組即是乙個.c檔案和乙個.h檔案的結合,標頭檔案 h 中是對於該模組介面的宣告 2 某模組提供給 其它模組呼叫的外部函式及資料需在.h中檔案中冠以extern關鍵字宣告 3 模組內的函式和全域性變數需在.c檔案開頭冠以sta...
C語言模組化中標頭檔案 h的設計
乙個專案會切割成很多模組,模組與模組之前的聯絡,需要通過標頭檔案來聯絡起來,這就是為什麼先設計標頭檔案,再實現.c的原因 總結一下編碼歷程 1,剛開始學c,把各種結構體,函式宣告放乙個.h中 2,接著發現,要學會隱藏,把結構體,內部函式的宣告放模組使用的.h,把之前乙個大的.h切割成n多的模組.h ...
C語言之模組化程式設計
1 為什麼使用函式?函式就是功能 每個函式代表特定的功能,函式的名字應反應其代表的功能。2 怎麼定義函式?函式定義時需指定函式的型別 即函式返回值的型別。函式定義可大致分為以下三類 無參函式 型別名 函式名 void 可省略 有參函式 型別名 函式名 形參 空函式 程式設計時往往需要確定若干個模組,...