分階段推薦閱讀清單(2024 更新版)
階段 0:零基礎入門(前 2 週)
| 書名 | 作者 | 特色 | 適合對象 |
| C Primer Plus(第 6 版) | Stephen Prata | 零起點、範例豐富、習題詳解、涵蓋 C11 | 完全新手、自學者 |
| C 語言程式設計:現代方法(第 2 版) | K. N. King | 教科書風格、概念清晰、良好習題、強調良好風格 | 大學教材、系統性學習者 |
階段 1:進階核心(第 3-6 個月)
| 書名 | 作者 | 核心價值 | 必讀章節 |
| C 程式設計語言(第 2 版,K&R) | Kernighan & Ritchie | 語言創始人親著、簡潔權威、C89 標準 | 全書(薄但精) |
| C 指標詳解 | Kenneth Reek | 指標專題最深入、記憶體模型、函數指標、鏈結結構 | 第 1-13 章 |
| C 專家程式設計 | Peter van der Linden | 連結器、記憶體、陣列/指標差異、預處理器、標準庫 | 第 1, 3, 4, 6, 7, 9 章 |
| C 陷阱與缺陷 | Andrew Koenig | 薄、精、經典坑點、未定義行為、可移植性陷阱 | 全書(一天讀完,終身受用) |
階段 2:系統程式與工程實踐(第 6-12 個月)
| 書名 | 作者 | 應用領域 | 為何必讀 |
| Unix 環境高階程式設計(第 3 版,APUE) | W. Richard Stevens / Stephen Rago | 系統呼叫、檔案 I/O、進程、訊號、執行緒、網路、IPC | Linux/Unix 系統程式聖經 |
| Unix 網路程式設計 卷 1:套接字 API(第 3 版,UNP) | W. Richard Stevens 等 | TCP/IP、Socket、I/O 多工、選項、廣播、IPv6 | 網路程式設計權威指南 |
| Linux 核心設計與實作(第 3 版) | Robert Love | 排程器、記憶體管理、VFS、模組、中斷、同步機制 | 核心開發者入門首選 |
| 現代 C 語言程式設計(第 2 版) | Jens Gustedt | C11/C17/C23 新特性、泛型、原子操作、執行緒、對齊 | 現代 C 標準實戰指南 |
階段 3:專精領域(依興趣選讀)
- 嵌入式/裸機:《嵌入式系統程式設計》、《STM32 開發指南》、《FreeRTOS 實戰》
- 高效能計算:《優化 C++ 程式效能》(適用 C)、《Intel 64 和 IA-32 架構軟體開發手冊》
- 編譯器/工具鏈:《編譯器設計》、《Linkers and Loaders》、《LLVM 實戰》
- 安全/逆向:《軟體安全編碼標準》、《實戰惡意代碼分析》、《IDA Pro 權威指南》
輔助參考書(案頭必備)
避坑指南:不推薦的書
- 譚浩強《C 程式設計》:錯誤百出、教學風格陳舊、非標準代碼、誤導初學者(如
void main()、gets()、conio.h)。若校課指定,考試應付即可,勿作學習主教材。
- 國內速成類「21 天精通」、「從入門到精通」系列:多為翻譯拼湊、錯誤多、深度不足。
如何高效閱讀技術書
- 先跑代碼:書中每個範例必須親手輸入、編譯、執行、修改參數觀察結果。
- 做習題:K&R、King、Reek 書後習題是精華,必做。
- 寫筆記/部落格:用自己的話重述概念、畫記憶體圖、記錄踩坑經驗。
- 閱讀開源代碼:Redis、SQLite、nginx、Linux 核心——將書本知識映射到真實專案。
總結:最小必要書籍組合
若只能買 3 本:
- C Primer Plus(入門)
- C 指標詳解(核心進階)
- Unix 環境高階程式設計 (APUE)(系統實戰)
再加 cppreference.com 與 Godbolt,足以支撐從新手到系統程式工程師的成長。