Cppcheck是用在C、C++中对code进行静态检查的工具。它的源码在 https://github.com/danmar/cppcheck 。它的License是GPL-3.0。
Cppcheck可以检查不通过编译的文件,执行的检查包括:(1)、自动变量检查;(2)、数组的边界检查;(3)、class类检查;(4)、过期的函数,废弃函数调用检查;(5)、异常内存使用,释放检查;(6)、内存泄漏检查,主要是通过内存引用指针;(7)、操作系统资源释放检查,中断,文件描述符等;(8)、异常STL 函数使用检查;(9)、代码格式错误,以及性能因素检查。
Cppcheck的简单使用可以参考: http://www.jb51.cc/article/p-vjckdgnt-ux.html
Ubuntu上安装Cppcheck操作步骤:
1. 可以简单的通过执行sudo apt-get install cppcheck命令进行安装,在Ubuntu14.04上默认安装的版本为1.61,默认的安装路径在/usr/bin,结果如下:
2. 由于现在用到很的C++11特性,用低版本的Cppcheck经常会有误检,因此这里需要升级Cppcheck版本到最新1.80;
3. 首先通过sudo apt-get remove cppcheck命令移除1.61版本,结果如下:
4. 从 https://github.com/danmar/cppcheck/releases 下载最新源码cppcheck-1.80.tar.gz;
5. 通过tar -xvzf cppcheck-1.8.0.tar.gz进行解压缩;
6. 进入cppcheck-1.80目录,依次执行如下命令(或使用Cppcheck主页推荐的配置):
$ make $ sudo make install会安装到/usr/bin目录,结果如下:
7. 使用Cppcheck对指定目录执行操作,结果如下: