Cppcheck是一种用于C和C ++ 编程语言的静态代码分析工具。 它是一个多功能工具,可以检查非标准代码。 创始人和首席开发人员是DanielMarjamäki。
Cppcheck是GNU通用公共许可证下的免费软件 。
特征
Cppcheck支持编译器本身可能无法涵盖的各种静态检查。 这些检查是可以在源代码级别执行静态分析检查。 该程序面向严格的静态分析检查,而不是启发式检查。
支持的一些检查包括:
- 自动变量检查
- 检查阵列溢出的边界
- 类检查(例如,未使用的函数,变量初始化和内存复制)
- 根据Open Group 使用已弃用或已取代的函数
- 异常安全检查,例如内存分配和析构函数检查的使用
- 内存泄漏 ,例如由于丢失范围而没有重新分配
- 资源泄漏 ,例如由于忘记关闭文件句柄
- 标准模板库函数和习语的使用无效
- 杂项风格和性能错误
与许多分析程序一样,有许多不寻常的编程习惯用例在特定目标情况下可以接受,或者在程序员的源代码校正范围之外。 2009年3月进行的一项研究确定了Cppcheck发现误报的几个区域,但未指明所检查的程序版本。 Cppcheck已被确定用于诸如CERNs 4DSOFT元分析软件包, 也用于高能粒子探测器读出设备中的代码验证, 也用于射电望远镜的系统监测软件以及大型误差分析等系统中。项目,如OpenOffice.org 和Debian档案。
发展
该项目正在积极开发并在不同的发行版中积极维护。 它在许多流行的项目找到了有效的错误,例如Linux内核和MPlayer 。
插件
存在以下IDE的插件
- CLion
- Blocks - 集成。
- CodeLite - 集成。
- Eclipse
- Emacs
- gedit
- Hudson (軟體)
- Jenkins (軟體)
- Kate
- KDevelop
- Qt Creator
- Sublime Text
- Visual Studio
- Yasca
- 静态代码分析工具列表
参考
外部链接
*
评论 (0)