最近在看別人寫的**,關於巨集存放在哪個標頭檔案這一點上真是異常的鬱悶。現總結如下:
在將程式模組化的同時,重要的是確定自己所要使用的函式和巨集的存放檔案。
函式或者巨集可以分為專用和通用。可以將專用的根據其功能存放到幾個檔案(.c 和 .h)中當成乙個模組。通用的可以有條理的放在一起。
巨集中的常量有時候單獨分出來,會使**更加的清晰(主要原因是看作者是這麼幹的)。
在幾個小的專用模組(功能互相不是太干擾)中的巨集,可以將常量一起單獨存放到乙個const.h中。什麼叫常量呢?
比如我要訪問某幾個暫存器的埠。這個就可以宣告在const.h中,而我在自己的程式假如定義個buf,將buf的大小定義為巨集,這就不能被叫做常量(實際意義上的常量),因為你可以通過改巨集的定義去修改buf的大小。但是暫存器埠是改不了的,所以它定義在了const.h中。
總結一句:值不能被修改的巨集,放到const.h中!!!其他的巨集放到單獨模組的標頭檔案中。
比如有些函式特別特別短,可以使用巨集來代替。
關於其他的標頭檔案的用法:比如global.h與global.c用於存放全域性變數,type.h由於存放自己新定義的型別(可以不包括結構體),公用的函式宣告放到proto.h中。
有關C 中的多檔案組織結構
今天讀到了多檔案組織結構,感覺對c 的認識又上了乙個層次,接下來就談談多檔案組織結構。c 中程式的顯著特點,有三部分構成,類的定義,類的實現,類的使用 主函式 通常乙個程式是由多個源程式檔案構成,源程式檔案又稱為編譯單元,每個源程式檔案可以進行單獨編寫,編譯,再進行連線。再來說說原始檔和標頭檔案。原...
C 程式的多檔案組織
構造乙個大型程式時,如果程式開發時間有限,這種形式的團隊協作就非常重要。利用函式將乙個程式設計任務分解為子任務的乙個優勢在於,不同的人可以負責不同的子任務。在程式進行編譯時,以程式模組 即程式檔案 為編譯單位,即分別對每乙個編譯單位進行編譯。如果發現錯誤,可以在本程式模組範圍內查錯並改正。考慮識別符...
c 程式的多檔案組織
當程式規模變大後,乙個程式用多個檔案組織,便於組織生產。這樣,不必每次都重複對所有 進行編譯,而只需編譯一次即可。把編譯後所形成的目標檔案儲存起來,以後在需要時把它調出來直接與程式的目標檔案相連線即可。c 中一種常用的做法是,獨立出乙個標頭檔案來。正確使用標頭檔案帶來的好處包括 支援 的區域性單獨編...