驱动操作系统、编译器和嵌入式硬件的编程语言
C 不是历史遗留物 — 它是 Linux、SQLite 数据库引擎、CPython 解释器以及当今几乎所有微控制器固件的基础。理解 C 意味着理解内存如何真正工作、处理器如何实际执行指令,以及为什么每一种高级语言都要做出它所做的权衡。本课程从你的第一个 printf 开始,一直到编写内存分配器、哈希表、链表和一个可工作的解释器。
你将学到什么
你将从运算符、控制流、格式化 I/O 和类型转换开始,然后进入标准库 — math.h、string.h、ctype.h — 以及 C 特有的主题如枚举、命令行参数、存储类和预处理器宏。中级部分涵盖指针和动态内存管理、函数指针和回调、可变参数函数和模块化多文件项目。你将从零开始实现核心数据结构:链表、二叉树、哈希表和动态数组。高级课程涵盖多线程和并发、套接字编程、进程间通信、使用 Valgrind 进行内存调试,以及使用 epoll 的网络编程。
学习路径
共三十九门课程从 A1 到 C1。A1 和 A2 课程建立语法、递归和标准库的基础。十一门 B1 课程培养实践技能 — 文件处理、位操作、结构体和联合体,以及预处理器。十门 B2 课程深入讲解:动态内存、排序算法、哈希表,以及最后的 C 构建内存分配器。七门 C1 课程用系统级工作结束:多线程和并发、C 套接字编程、C 使用 Valgrind 进行内存调试、C 编写简单解释器和 C 使用 epoll 进行网络编程。
它如何工作
每门课程分为简短、专注的课程单元,你在内置代码编辑器中完成,实时反馈输出结果。无论你在段错误、链接器错误还是指针算术中的差一错误上遇到困难,AI 导师随时可用。进度按课程单元跟踪,因此你可以跨会话暂停和恢复而不会丢失进度。