嵌入式C代码审查规范手册
🧑🏫
30章 · 从规范到实战
📋
完整目录 · 点击卡片跳转
01
代码审查总论
跳转
嵌入式C代码审查的目标、原则与流程概述。
02
编码风格规范
跳转
命名规则(变量、函数、宏、文件)、缩进与括号风格。
03
注释规范
跳转
文件头注释、函数注释、代码行注释的写法与审查要点。
04
头文件规范
跳转
包含卫士、头文件依赖、接口声明与内部实现分离。
05
变量与作用域
跳转
全局变量、静态变量、局部变量的使用规范与审查。
06
数据类型使用
跳转
标准整型(stdint.h)、枚举、结构体、联合体的正确用法。
07
常量与宏定义
跳转
const、enum、宏定义的选择与审查,避免魔法数字。
08
函数设计规范
跳转
函数长度、参数个数、返回值设计、内联函数的使用。
09
控制流审查
跳转
if-else、switch-case、循环结构的规范与常见陷阱。
10
指针使用规范
跳转
指针声明、空指针检查、指针运算与数组退化的审查。
11
内存管理
跳转
动态内存分配(malloc/free)的使用规范与内存泄漏防范。
12
字符串处理
跳转
字符串安全函数(strncpy、snprintf等)的使用与审查。
13
缓冲区溢出防范
跳转
数组边界检查、格式化字符串漏洞、栈保护机制。
14
位操作规范
跳转
位域、移位操作、掩码定义与可读性优化。
15
预处理器规范
跳转
条件编译、宏展开副作用、#pragma与#error的使用。
16
模块化设计
跳转
模块划分原则、接口与实现分离、低耦合高内聚审查。
17
错误处理机制
跳转
返回值检查、errno使用、断言(assert)与错误码设计。
18
日志与调试
跳转
日志级别设计、调试宏、条件编译的调试代码审查。
19
中断与并发安全
跳转
中断服务程序规范、临界区保护、volatile关键字使用。
20
状态机实现
跳转
状态机编码模式、switch-case与表驱动法的审查。
21
可移植性审查
跳转
字节序、对齐、编译器特性、跨平台代码规范。
22
性能优化审查
跳转
循环优化、缓存友好、死代码消除、编译器优化选项。
23
安全性审查
跳转
输入验证、整数溢出、安全编码标准(MISRA-C/CERT-C)。
24
测试与可测试性
跳转
单元测试接口设计、测试桩、代码覆盖率审查。
25
代码复用与重构
跳转
重复代码检测、函数提取、设计模式在C中的应用。
26
文档与版本管理
跳转
代码提交规范、变更日志、API文档生成审查。
27
代码审查工具
跳转
静态分析工具(PC-Lint、Coverity)、代码格式化工具。
28
审查流程实践
跳转
同行评审、走查、正式审查的流程与角色定义。
29
审查清单制定
跳转
通用审查清单、安全审查清单、性能审查清单。
30
案例分析与总结
跳转
典型嵌入式C代码审查案例复盘与经验总结。