简介
C-Journey 是一份面向 C 初学者与学习者的学习日志 + 社区枢纽——目标不只是「会写 C 语法」,而是逐步具备用 C 完成真实工程、库设计、系统编程与嵌入式开发的能力。
它把 C 进阶拆成 8 个阶段,从开发环境与基础工具一路走到综合项目与开源协作,提供一份「可落地」的 C 进阶路线图。
路线概览
阶段 0:开发环境与基础工具
→ 阶段 1:C 语言基础
→ 阶段 2:指针、内存与数据布局
→ 阶段 3:数据结构与算法基础
→ 阶段 4:工程化与模块化设计
→ 阶段 5:系统编程
→ 阶段 6:嵌入式 C 与硬件相关开发
→ 阶段 7:综合项目与开源协作内容亮点
- 阶段 0 ~ 1:环境搭建、编译调试、语法基础、小型练习项目
- 阶段 2 ~ 3:指针、内存管理、数据结构与算法实现(Vector、HashMap、环形缓冲区等)
- 阶段 4:工程化(Makefile / CMake、静态 / 动态库、测试、Valgrind、文档)
- 阶段 5:系统编程(进程、线程、网络、IO 多路复用、Mini Shell、HTTP Server)
- 阶段 6:嵌入式 C(寄存器、中断、FreeRTOS、UART Shell、驱动分层)
- 阶段 7:综合项目与开源协作(CI、PR、Code Review)
适合人群
- 已学过 C 语法,希望系统提升工程能力的开发者
- 在校学生或转嵌入式 / 系统方向的学习者
- 希望有一份「可落地」C 进阶路线图的团队或个人
如何使用
- 按阶段顺序学习,每个阶段先读
documents/中的知识点文档 - 完成
examples/中对应实践,参考projects/中的完整项目 - 在
exercises/中做附加练习 - 最终挑战综合项目,并尝试提交 PR 参与开源
与 AELS 的关系
属于 Modern C++ 主线(C / C++ 学习生态)的 C 语言进阶轨道,与 Tutorial_AwesomeModernCPP(现代 C++ 系统教程)互为补充——前者打 C 工程地基,后者攻 C++ 现代特性。它在阶段 6 自然衔接到嵌入式 C,与 BareMetal-Drivers、ST-Forge 等 MCU 项目呼应。