C/C++代码分析检测工具

偶尔发现代码中有一些低级错误,比如拷贝内存越界或者变量未初始化就调用等,导致debug版本可用但是release版本异常等现象,也不方便调试。

因此在网上找了一些代码分析工具,cppcheck(开源免费)、understand(需要付费)、pvs studio(免费)。以前也用过cpptest,但是cpptest太重了,而且使用学习曲线的路程有点长。

1、cppcheck安装出现问题:

据说是可以和vs集成使用的,参考链接:http://www.codeproject.com/Tips/472065/Poor-Man-s-Visual-Studio-Cppcheck-Integration 
如果有人装上了,也请告知一下。

2、安装使用pvs studio:

操作非常方便易用,与VS自动集成,安装也没有出现什么问题,可以找出明显的错误、分等级警告,安装包20MB左右,推荐大家使用。

使用方法:PVS-Studio->Check Solution即可

下载链接:http://pan.baidu.com/s/1jGHvDY2

参考链接:http://www.viva64.com/en/b/0149/

时间: 2024-11-02 22:33:16

C/C++代码分析检测工具的相关文章

c/c++编码规范(3)--google代码规范检测工具cpplint.py

cpplint.py是来自google开源项目风格错误检测工具.它是一个python脚本,和google开源项目风格指南一同发布.下载地址:https://github.com/google/styleguide. cpplint.py的使用方法: 1. 安装python.注意设置环境变量:将python的安装目录写入path环境变量. 2. 执行cpplint.py脚本 我的测试实验如下: 1) 将cpplint.py和test.cc放在实验目录. 2) 在实验目录写一个简单的批处理cppli

windows下代码规范检测工具sonarqube安装与使用,含与maven的结合

一.首先下载sonarqube   地址 : https://www.sonarqube.org/downloads/   (最新版本支持java11+,博主下载支持java8的版本7.7), 下载SonarScanner   地址:https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/ 需要注意的是该版本对应的是mysql5.7,不能是mysql8 二.windows 安装 mysql5.7安装好创建sonar数据库 解压下载

java代码分析及分析工具

java代码分析及分析工具 一个项目从搭建开始,开发的初期往往思路比较清晰,代码也比较清晰.随着时间的推移,业务越来越复杂.代码也就面临着耦合,冗余,甚至杂乱,到最后谁都不敢碰. 作为一个互联网电子商务网站的业务支撑系统,业务复杂不言而喻.从09年开始一直沿用到现在,中间代码经过了多少人的手,留下了多少的坑,已经记不清楚了,谁也说不清了. 代码的维护成本越来越高.代码已经急需做调整和改善.最近项目组专门设立了一个小组,利用业余时间做代码分析的工作,目标对核心代码进行分析并进行设计重构. 代码分析

七款代码味道识别工具【简介】

代码味道识别工具 (Code Smell Detection Tools, CSDT)既可以应用于软件开发阶段,也可以应用于软件维护阶段.目前大部分IDE都集成了自动或者半自动重构工具,但是根据国外研究人员的调查发现,真正在软件开发和维护中使用重构工具的人并不多,其中有一个很重要的原因是不知道何时该重构,也就是说找不准重构时机,因此重构时机的自动识别具有很大的实用价值.很多代码味道本身就是重构时机的指示器,如果能够自动发现这些代码味道,就说明代码中存在一些不恰当的设计方案或者程序代码,在此时再实

【软件架构】七款代码味道识别工具

       代码味道识别工具 (Code Smell Detection Tools, CSDT)既可以应用于软件开发阶段,也可以应用于软件维护阶段.目前大部分IDE都集成了自动或者半自动重构工具,但是根据国外研究人员的调查发现,真正在软件开发和维护中使用重构工具的人并不多,其中有一个很重要的原因是不知道何时该重构,也就是说找不准重构时机,因此重构时机的自动识别具有很大的实用价值.很多代码味道本身就是重构时机的指示器,如果能够自动发现这些代码味道,就说明代码中存在一些不恰当的设计方案或者程序代

JAVA代码静态检测之PMD

今天再次想启动Java代码静态检测工具的利用问题,主要再次尝试用了PMD,发现不少代码编码规范问题和好的代码建议,并学到不少自己之前没有注意到的Java方便的基础知识,感觉很不错,把相关明白的好的规则回忆总结下,再以后编码过程中要把随时利用代码静态检查工具,用好代码静态检查工具养成习惯.今天用到的PMD检查规则如下: If表达式必须使用{},无论有多少语句 While循环必须使用{},无论有多少语句 IfElse表达式必须使用{} For循环语句必须使用{} 如果方法返回boolean,那么注意

SDL2.0例子代码分析-----CheckKeys Project

SDL简介 SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成.SDL提供了数种控制图像.声音.输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux.Windows.Mac OS X等)的应用软件.目前SDL多用于开发游戏.模拟器.媒体播放器等多媒体应用领域. SDL1.2和SDL2的差别 SDK1.2和SDL2.1系列的API接口变动的不小,当然功能也大大增强,支持多线程窗口. 具体的change 请看 h

SonarQub代码分析平台部署

SonarQube构架 SonarQube(简称Sonar)是管理代码质量的开放平台,它可以快速地对代码质量进行分析,并给出合理的解决方案,提高管理效率,保证代码质量. SonarQube框架包含以下四个部分: Project SonarQube Scanner SonarQube Server SonarQube Database Project 是需要被分析的源码,如我们的app工程源码,SonarQube支持多种语言和多种工程结构,Andriod是属于一种多模块的Java工程. Sonar

常用 Java 静态代码分析工具的分析与比较

转载自: http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能.特性等方面对它们进行分析和比较,希望能够帮助 Java 软件开发人员了解静态代码分析工具,并选择合适的工具应用到软件开发中. 引言 在 Java 软件开发过程中,开发团队往往要花费大量的时间和精力发现并修改代