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. 基于 Python 官方 GitHub 构建 Python 文档

    最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ...

  2. Data Model for Message Receiver

    1. Physical Data Model 2. SQL Statements drop database MessageReceiver go /*======================== ...

  3. 云服务jdk 升级为 OpenJDK11

    由于oracle是个碧池,大家都懂,今年来,jdk版本更新的越来越频繁,所以目前商业版本需要收费了 每个企业都要考虑这样的问题,所以嘛,新项目试水肯定是要的,用openJDK11吧, https:// ...

  4. Android PopupWindow 仿微信弹出效果

    项目中,我须要PopupWindow的时候特别多,这个东西也特别的好使,所以我今天给大家写一款PopupWindow 仿微信弹出效果.这样大家直接拿到项目里就能够用了! 首先让我们先看效果: 那么我首 ...

  5. 【原创 Hadoop&Spark 动手实践 11】Spark Streaming 应用与动手实践

    [原创 Hadoop&Spark 动手实践 11]Spark Streaming 应用与动手实践 目标: 1. 掌握Spark Streaming的基本原理 2. 完成Spark Stream ...

  6. ES容易忽视的集群配置

    一 前言 目前生产系统由Solr转ES了,在这边就记录下在使用过程中容易忽视的配置吧,其实我也是才用,如果有什么错误的地方,多指正. 二.配置 1.ES的段合并是限速设置 默认是20MB/s ,如果是 ...

  7. vs code 快捷键中英文对照

    常用 General 按 Press 功能 Function Ctrl + Shift + P,F1 显示命令面板 Show Command Palette Ctrl + P 快速打开 Quick O ...

  8. 西山居首页jQuery焦点图代码

    西山居首页jQuery焦点图代码是一款带文字描述,左右箭头,索引按钮,自动轮播切换的jQuery特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div style ...

  9. mysqldump定时备份数据库

    mysql服务器ip:192.168.0.10 备份服务器ip:192.168.0.11 数据库名称:db_product 思路:在mysql服务器A上创建一个用户分配权限专门用于数据库备份,A服务器 ...

  10. Houdini技术体系 基础管线(三) :UE4以选择区域的方式对地形做生成和更新 上篇

    背景     前一节里,解决了Houdini地形无缝导入到UE4的流程问题.但这种方法也有它的局限性,在实际游戏项目里,LA和LD还是偏向在游戏引擎编辑器里工作,他们的一些设计也会影响到地形的信息,那 ...