cppcheck
是一个用于静态分析 C/C++ 代码的开源工具,可以帮助开发者在编译之前发现代码中的错误和不合规范的写法
-q
或 --quiet
:静默模式,只输出错误信息。-v
或 --verbose
:详细模式,输出更多关于检查过程的信息。--enable=<checks>
:启用指定的检查,可以是以逗号分隔的检查列表。例如:--enable=warning,performance
。--inconclusive
:显示不确定的检查结果。--force
:强制执行检查,即使代码中存在编译错误。--std=<standard>
:指定 C/C++ 标准,例如:--std=c99
或 --std=c++11
。--language=<language>
:指定代码的语言,可以是 c
或 c++
。--template=<template>
:自定义输出格式,其中 {file}
、{line}
、{severity}
、{id}
、{message}
等变量将被替换为实际值。例如:--template='{file}:{line}: {severity}: {message}'
。--suppress=<spec>
:抑制指定的错误或警告,例如:--suppress=unusedFunction
。--suppressions-list=<file>
:从文件中读取抑制规则。--include=<dir>
:添加包含目录,用于解析头文件。--max-configs=<number>
:设置最大配置数量,默认为 12。--platform=<platform>
:指定平台,例如:--platform=unix64
或 --platform=win32A
。--error-exitcode=<number>
:设置错误退出代码,当发现错误时返回指定的退出代码。--xml
或 --xml-version=<number>
:生成 XML 格式的输出。--project=<file>
:从编译数据库(compile_commands.json)中读取项目信息。--library=<file>
:从指定的库文件中读取函数声明。--report-progress
:报告进度信息。--inline-suppr
:启用内联抑制注释,例如:// cppcheck-suppress unusedFunction
。--exitcode-suppressions
:使用退出代码表示抑制情况。这些选项可以组合使用,以便根据需要调整 cppcheck
的行为。更多详细信息和选项,请参阅 cppcheck 官方文档。