C++ 代码静态分析工具cppcheck【转】

 

转自:http://blog.csdn.net/chen19870707/article/details/42393217

 
 

C++ 代码静态分析工具cppcheck

 

  • Author:Echo Chen(陈斌)

  • Email:chenb19870707@gmail.com

  • Blog:Blog.csdn.net/chen19870707

    Date:Jan.1st , 2015

     

    近来游戏进入尾期,已上线运营,需求比较少,可以有时间整理优化下代码,但是优化如果没有一个标准,很难有一个实际的效果,所以先从简单的代码静态分析开始,找了许多代码静态检查的工具,splint,pclint、purify,infusion、cppcheck等,但cppcheck文档最精简,看起来最容易使用,个人简单的思路解决复杂问题,所以选择了cppcheck.

    1.cppcheck下载

    cppcheck现在的版本已经出到1.68,新版本的cppcheck需要C++11的支持,这里选择最经典的49版本。

    下载地址:cppcheck-1.49.tar.bz2

    2.cppcheck安装

       1: tar jxvf cppcheck-1.49.tar.gz
       2: cd cppcheck-1.49
       3: make
       4: make install

    如果make过程中报如下错误:

    image

    则需要安装pcre第三方正则表达式库

    image

    安装完再make & make install 成功。

    3.cppcheck 使用

    使用cppcheck –h 可以查看帮助,下面简单介绍下最有用的几个选项

     

       1: cppcheck . -j 3 --enable=all --xml 2>result.xml

    -j参数指定的是检查线程的个数,如果需要检查代码的量很大,-j参数还是很有用的 
           --enable指定当前指定的检查级别,可选的参数有all,style,information等

    --xml 是输出xml的版本

     

    4.cppcheck分析结果

     

    如下截取了工程的部分分析结果:

     

    image

     

    这里主要是说这些变量都应该设置为const变量。

     

    5.cppcheck可以分析错误的类型

     

       1: 自动变量检查
       2: 数组的边界检查
       3: class类检查
       4: 过期的函数,废弃函数调用检查
       5: 异常内存使用,释放检查
       6: 内存泄漏检查,主要是通过内存引用指针
       7: 操作系统资源释放检查,中断,文件描述符等
       8: 异常STL 函数使用检查
       9: 代码格式错误,以及性能因素检查

     

    -

  • Echo Chen:Blog.csdn.net/chen19870707

原文链接: https://www.cnblogs.com/sky-heaven/p/6273620.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C++ 代码静态分析工具cppcheck【转】

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/247487

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 上午2:16
下一篇 2023年2月14日 上午2:16

相关推荐