You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.5 KiB
2.5 KiB
Cppcheck 使用指南
基本信息
- Cppcheck 位置:
/usr/bin/cppcheck(系统已安装) - 项目文件:
/home/feng/test/math.c - 项目目录:
/home/feng/test/
基本使用命令
1. 生成 XML 报告(推荐,用于 cppcheck_to_tests.py)
# 在 WSL 中执行
cppcheck --enable=all --xml --xml-version=2 /home/feng/test/math.c 2> /home/feng/test/report.xml
或者更详细的选项:
cppcheck \
--enable=all \
--xml \
--xml-version=2 \
--suppress=missingIncludeSystem \
--suppress=unusedFunction \
/home/feng/test/math.c \
2> /home/feng/test/report.xml
2. 生成文本报告
cppcheck --enable=all /home/feng/test/math.c 2> /home/feng/test/report.txt
3. 直接查看输出(不保存文件)
cppcheck --enable=all /home/feng/test/math.c
4. 检查整个项目目录
如果 /home/feng/test/ 下有多个文件:
cppcheck --enable=all --xml --xml-version=2 /home/feng/test/ 2> /home/feng/test/report.xml
常用选项说明
--enable=all: 启用所有检查(包括 style、performance、portability 等)--xml: 输出 XML 格式--xml-version=2: 使用 XML 版本 2(推荐)--suppress=规则ID: 抑制特定规则的警告-I <路径>: 添加头文件搜索路径--std=c99或--std=c11: 指定 C 标准(对于 .c 文件)
完整示例:生成报告并用于测试用例生成
步骤 1: 生成 XML 报告
cd /home/feng/report
cppcheck --enable=all --xml --xml-version=2 /home/feng/test/math.c 2> /home/feng/test/cppcheck_report.xml
步骤 2: 使用 cppcheck_to_tests.py 生成测试用例
cd /home/feng/Report-Generation
python3 cppcheck_to_tests.py \
/home/feng/test/cppcheck_report.xml \
--project-root /home/feng/test \
--out ./math_cppcheck_tests \
--model deepseek-chat \
--auto-verify \
--use-templates
从 Windows PowerShell 执行
如果要从 Windows PowerShell 执行,使用 wsl 命令:
wsl cppcheck --enable=all --xml --xml-version=2 /home/feng/test/math.c 2> /home/feng/test/report.xml
验证 cppcheck 版本
cppcheck --version
查看帮助
cppcheck --help
针对 C 文件的推荐命令
由于 math.c 是 C 文件,建议指定 C 标准:
cppcheck \
--enable=all \
--xml \
--xml-version=2 \
--std=c99 \
--suppress=missingIncludeSystem \
/home/feng/test/math.c \
2> /home/feng/test/report.xml