C 語言核心觀念:程式結構、宣告與定義、除錯技巧
程式架構
C 程式由一或多個函式組成,必須有唯一 main()。建議使用 int main(void) 並 return 0;。一對大括號內視為一個區塊。
宣告 vs 定義
- 宣告:指定識別子屬性(型態、函式原型),不一定配置記憶體。
- 定義:實作宣告,配置記憶體(定義性宣告)。
- 廣義上宣告包含定義,但非所有宣告皆為定義。
extern int a; 為參考性宣告,int a; 為定義性宣告。
C 語言要求變數先定義後使用。函式原型屬宣告一種。
宣告變數的好處
- 集中管理,易閱讀;可加註解說明用途。
- 編碼前規劃變數,促進設計思考。
- 拼字錯誤編譯器會偵測。
程式可讀性技巧
- 有意義的命名與註解。
- 空行分隔邏輯區塊(如宣告區與執行區)。
- 每行一敘述(for 迴圈控制部份除外)。
- 檔案開頭註解說明檔名與用途。
除錯分類與策略
- 語法錯誤:符號位置錯誤,編譯器報錯位置常較實際位置滯後一行。
- 語意錯誤:語法正確但結果不符預期。可在關鍵點加
printf 監控變數值,或手動追蹤程式狀態(記錄每步變數值),亦可使用除錯器(靜態/動態)。
分號的重要性
分號為敘述結束符號,遺漏會導致編譯錯誤。