怎樣定義和宣告全域性變數和函式最好?
一個全域性變數或函式可以 (在多個編譯單元中) 有多處 “宣告”, 但是 “定義” 卻只能允許出現一次。
定義是分配空間並賦初值 (如果有) ,宣告則是給需要呼叫該變數或者函式的地方宣告該變數或函式,使編譯不出錯。
最好的安排是在某個相關的 .c 檔案中定義, 然後在其對應的標頭檔案 (.h)(用extern修飾) 中進行外部宣告, 在需要使用的時候, 只要包含對應的標頭檔案即可。定義變數的
.c 檔案也應該包含該標頭檔案, 以便編譯器檢查定義和宣告的一致性。