⚡ 静态分析 · 规范实战
嵌入式C · 30章完全攻略
🧑🎓
风格 · 活力全栈
📚 点击卡片跳转至对应章节 · 共30章
🎯 目录完整覆盖 · 从入门到实战
01
静态分析概述
基础
什么是静态分析 · 为什么需要 · 与动态测试区别
02
工具链搭建
环境
PC-Lint / Cppcheck / SonarQube 安装配置
03
编码规范基础
MISRA
MISRA-C 2012核心规则 · 工具配置 · 常见违规
04
PC-Lint实战
深入
命令行 · 配置文件 · 告警解读与修复
05
Cppcheck实战
高效
命令行参数 · 抑制假阳性 · Makefile集成
06
SonarQube集成
平台
项目创建 · 代码扫描 · 质量门禁
07
静态分析规则定制
自定义
规则编写 · 优先级 · 团队规范统一
08
指针与内存分析
核心
空指针 · 内存泄漏 · 野指针问题
09
数组与缓冲区
安全
数组越界 · 缓冲区溢出 · 字符串安全函数
10
控制流分析
逻辑
不可达代码 · 死循环 · switch-case穿透
11
数据流分析
数据
未初始化变量 · 冗余赋值 · 常量传播
12
并发与竞态
多线程
竞态检测 · 锁规范 · 原子操作检查
13
头文件与宏
预处理
头文件卫士 · 宏规范 · 宏展开问题
14
函数与接口
设计
复杂度 · 参数检查 · 返回值检查
15
类型与转换
类型安全
隐式转换检测 · 类型安全 · 枚举规范
16
注释与文档
可读性
注释规范 · 文档生成 · 代码可读性分析
17
代码度量
指标
圈复杂度 · 代码行数 · 函数长度检查
18
持续集成集成
CI/CD
Jenkins · GitLab CI · 自动化扫描流水线
19
告警管理
治理
告警分类 · 优先级 · 生命周期管理
20
假阳性处理
精准
假阳性识别 · 抑制策略 · 团队评审
21
报告与可视化
图表
报告生成 · 趋势图 · 质量仪表盘
22
团队协作
规范
代码审查+静态分析 · 规范制定 · 培训
23
嵌入式特有分析
底层
中断上下文 · 寄存器使用 · 堆栈分析
24
RTOS环境分析
实时
任务栈检查 · 信号量规范 · 优先级分析
25
驱动开发分析
驱动
硬件抽象层 · 寄存器访问 · DMA检查
26
安全关键系统
功能安全
IEC 61508 · 安全等级 · 静态分析应用
27
性能分析
优化
性能瓶颈检测 · 循环优化 · 内联函数
28
工具对比与选型
决策
PC-Lint vs Cppcheck vs SonarQube · 组合策略
29
实战案例一
智能家居
智能家居控制器静态分析全流程
30
实战案例二
汽车ECU
汽车ECU代码静态分析实战与总结