02 · C 语言与编译

嵌入式 Linux 的主要开发语言仍是 C。本模块覆盖从 C 语言核心特性、指针内存管理、数据结构,到 GCC 编译过程、Makefile/CMake 构建系统、GDB 调试。


子主题

文件 内容 必学程度
01-c-fundamentals.md C 语言基础与进阶(关键字、运算符、类型、控制流、函数) ★★★
02-pointer-and-memory.md 指针、数组、字符串、内存布局、对齐 ★★★
03-c-advanced.md C 高级特性(预处理、位运算、volatile/restrict、函数指针、回调、复合字面量) ★★★
04-data-structures.md 嵌入式常用数据结构(链表、队列、哈希表、红黑树、二叉树) ★★★
05-gcc-compilation.md GCC 编译过程(预处理、编译、汇编、链接;ELF 文件结构) ★★★
06-cross-compilation.md 交叉编译工具链(arm-linux-gcc、sysroot) ★★★
07-build-system.md Makefile 与 CMake(autotools、meson 简介) ★★★
08-gdb-debugging.md GDB 调试(断点、watch、core dump、远程调试) ★★★

学习目标

完成本模块后,你应该能够:

  1. 熟练使用 C 语言进行嵌入式编程,理解指针、内存布局
  2. 理解 GCC 编译过程的四个阶段,能分析 ELF 文件
  3. 配置和使用交叉编译工具链
  4. 编写复杂 Makefile 和 CMakeLists.txt
  5. 使用 GDB 调试用户程序、core dump、内核(kgdb)

推荐资源


进入下一模块

03-linux-app/README.md — Linux 系统与应用开发

📑 目录文档