20 天不求精通,求「能看懂代碼、能改 Bug、能寫小工具」。每天 3-4 小時,總計 60-80 小時。
| 天數 | 核心主題 | 必做練習 |
|---|---|---|
| 1-2 | 環境搭建、基本類型、輸入輸出、運算符 | 溫度轉換器、簡易計算器 |
| 3-4 | 流程控制、函數、遞歸 | 猜數字遊戲、階乘/斐波那契遞歸與迭代對比 |
| 5-6 | 數組、字符串、指針基礎 | 字符串反轉、冒泡排序、指針算術驗證 |
| 7-8 | 指針進階、二維數組、函數指針 | 矩陣轉置、回調函數實現通用排序 |
| 9-10 | 結構體、鏈表、動態內存 | 學生管理系統(增刪改查+文件持久化) |
| 11-12 | 文件操作、位運算、預處理器 | 文件加密/解密、位圖壓縮、多文件項目構建 |
| 13-14 | 標準庫常用函數、錯誤處理、調試技巧 | GDB 調試段錯、Valgrind 檢測內存洩漏 |
| 15-16 | 模塊化設計、Makefile、靜態/動態庫 | 將鏈表封裝為 liblist.a 供計算器調用 |
| 17-18 | 系統編程入門:進程、信號、管道 | 實現簡易 Shell (支持 cd、管道、重定向) |
| 19-20 | 網絡編程入門:Socket、TCP 回射服務器 | 多進程/多線程/IO 多路復用三版本對比 |
# Windows: Scoop 安裝
scoop install gcc make cmake gdb vscode
# VS Code 安裝 C/C++ Extension Pack
# 編譯旗標寫入 CMakeLists.txt
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -Wall -Wextra -Wpedantic -Werror -g -O0 -fsanitize=address,undefined")