cppcheck是一款静态代码检查工具,可以检查如内存泄漏等代码错误,使用起来比较简单,即提供GUI界面操作,也可以与VS开发工具结合使用。

1、安装

一般会提供免安装版,安装完成后将cppcheck.exe所在目录添加到环境变量中,这样cmd下可直接使用cppcheck指令来检测代码。

2、cppcheck的检查信息

error:代码中的错误项,包括内存泄漏等; 
warning:为了避免产生bug而提供的编程改进意见; 
style:编码风格,提示你哪些函数没有使用、哪些为多余代码等; 
portability:提示跨平台时容易出现的问题; 
performance:该部分代码可以优化; 
information:其他信息,可以忽略;

3、控制台下使用

打开cmd,输入cppcheck回车后会列出其支持的参数,选择参数进行代码检查:

cppcheck --enable=all  <dir> 
  • 1

该指令会列出目录dir中的所有文件的检查信息,若要导出检查信息,参考如下指令:

cppcheck --enable=all <dir> > D:\detect.txt;
  • 1

–enable= 有许多参数选项,详细可参考cppckeck参数说明,依据cppcheck帮助说明建议使用all,这在扫描整个工程的全部文件时比较有用,因为其可以检查没有使用到的函数等。

4、单独使用

cppcheck提供操作界面,如下图,点击左侧C++按键,选择目录,确定后就可以自动检测文件夹内的所有文件,默认情况下会给你列出cppcheck所支持的所有检测信息内容,共计六项内容,点击图中右侧选项可以选择要显示的内容。

5、与VS结合使用

将cppcheck嵌入到VS中作为一个外部工具,这样就可以在程序开发阶段直接进行静态代码错误检查。 
配置: 
点击VS的tools,选择外部工具选项,添加工具, 
标题:cppcheck在VS工具下的名称; 
命令:选择cppcheck.exe,包括绝对路径; 
参数:依据cppcheck的参数进行选择,可以使用以下几种 
–quiet –platform=win64 (ProjectDir);–enable=all(ProjectDir);–enable=all(ProjectDir); 
(ProjectDir);其中第一个仅显示检查到的错误信息,其余两个检查所有信息;初始目录:(ProjectDir);其中第一个仅显示检查到的错误信息,其余两个检查所有信息;初始目录:(ItemDir)或者$(ProjectDir) 
ItemDir是指一个单独的文件,如果参数中选择ItemDir,则只会检查当前选中的文件; 

 
勾选退出时关闭和使用输出窗口后点击确定,就可以将cppcheck工具添加到vs中。

使用: 
点击工具,查找到cppcheck选项,点击后就可以在output窗口输出检查信息,可以得到错误所在文件和行数。 

c++代码检测工具的更多相关文章

  1. StyleCop(C#代码检测工具)

    StyleCop(C#代码检测工具)   一.StyleCop是微软的一个开源的静态代码分析工具,检查c#代码一致性和编码风格. 二.下载地址   http://stylecop.codeplex.c ...

  2. python 代码检测工具

    对于我这种习惯了 Java 这种编译型语言,在使用 Python 这种动态语言的时候,发现错误经常只能在执行的时候发现,总感觉有点不放心. 而且有一些错误由于隐藏的比较深,只有特定逻辑才会触发,往往导 ...

  3. Jenkins整合SonarQube代码检测工具

    借鉴博客:https://blog.csdn.net/kefengwang/article/details/54377055 上面这博客写得挺详细的,挺不错.它这个博客没有提供下载的教程,这个博客提供 ...

  4. eslint 代码检测工具

    jshint 检测工具不够灵活下,道格拉斯(何许人也?json创造者,javascript重要任务,犀牛那本书就是他写的). 文档地址: 中文地址 English 安装 利用npm全局安装eslint ...

  5. 恶意代码检测工具 -- Mathematics Malware Detected Tools

    Mathematics Malware Detected Tools 重要:由于缺少测试数据,部分结论可能不正确.更多更准确的结论,还需要进行大量实验. 概述 mmdt(Mathematics Mal ...

  6. 阿里java代码检测工具p3c

    阿里在杭州云栖大会上,正式发布众所期待的<阿里巴巴Java开发规约>扫描插件! 该插件由阿里巴巴P3C项目组研发.这个项目组是阿里巴巴开发爱好者自发组织形成的虚拟项目组,把<阿里巴巴 ...

  7. 基于git diff进行的eslint代码检测

    缘起 在项目中, 通常都会使用代码检测工具来规范团队的代码风格, 比如eslint.随着代码的不断增加, eslint进行代码检测的时间也越来越久.每次检测的时候, 需要检测的文件和实际检测的文件极度 ...

  8. Docker+Jenkins持续集成环境(3)集成PMD、FindBugs、Checkstyle静态代码检查工具并邮件发送检查结果

    为了规范代码,我们一般会集成静态代码检测工具,比如PMD.FindBugs.Checkstyle,那么Jenkins如何集成这些检查工具,并把检查结果放到构建邮件里呢? 今天做了调研和实现,过程如下 ...

  9. 2.2、Android Studio通过注解提升代码检测

    使用像Lint这样的代码检测工具可以帮助你发现问题和提升代码,但是代码检测在有些地方很难应用.例如,Android的资源ID,使用一个int类型来表示字符.图像.颜色或者其他资源类型所以代码检测工具不 ...

随机推荐

  1. IOS应用内购(一)内购的种类

    Glossary IAP - In App Purchase, 应用内购. 内购种类 consumable - 可消费的,比如游戏中的金币,金币可以购买游戏道具或者装备,这个金币是可以消费的,用完之后 ...

  2. ld: library not found for -lstdc++.6

    ld: library not found for -lstdc++.6 Xcode10 删除 libstdc++.6.tbd libstdc++.6.0.9.tbd 用 libc++.tbd lib ...

  3. 【原创 Hadoop&Spark 动手实践 4】Hadoop2.7.3 YARN原理与动手实践

    简介 Apache Hadoop 2.0 包含 YARN,它将资源管理和处理组件分开.基于 YARN 的架构不受 MapReduce 约束.本文将介绍 YARN,以及它相对于 Hadoop 中以前的分 ...

  4. 如何知道局域网内哪些ip被占用----工具法Free IP Scanner

    在局域网中,尤其是在工作室和公司中需要修改IP地址才能上网,通常我们在设置完ip地址后会提示[该ip地址已被占用],又得回头去修改ip地址.本篇经验就介绍一款很好用的免费软件——Free IP Sca ...

  5. 数据仓库:Mysql大量数据快速导出

    背景 写这篇文章主要是介绍一下我做数据仓库ETL同步的过程中遇到的一些有意思的内容和提升程序运行效率的过程. 关系型数据库: 项目初期:游戏的运营数据比较轻量,相关的运营数据是通过Java后台程序聚合 ...

  6. java.exe和javaw.exe的区别

    相同点:二者都是Java的虚拟机,用来执行Java程序 区别: 1. javaw.exe运行程序时不会输出控制台信息 (注:“w”就是window的意思). 使用案例  start.bat(y以下代码 ...

  7. javascript实现限定高度下文字随不同设备自适应改变字体大小至字数完全展示

    function fontAutoMoreLine() { let textBox = document.getElementById("iconTxt"); let maxHei ...

  8. TensorFlow at Google I/O 2018

    2018 google I/O 上关于TF新功能以及TF技术生态方面的一些总结,更具体的内容可以去看2018 tfdev summit,这里面的内容会更加详细丰富.总的来说TensorFlow在庞大的 ...

  9. [python] python3.6 安装 pytesseract 出错

    安装pytesseact出错, 下载 tesseract-ocr , 地址 https://github.com/tesseract-ocr/tesseract 修改pytesseract.py 设置 ...

  10. visual studio 2019密钥

    企业版:BF8Y8-GN2QH-T84XB-QVY3B-RC4DF 专业版:NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y