静态代码分析工具

  • 1 cppcheck 静态代码分析工具

1 cppcheck 静态代码分析工具

  • 参考博客
    使用cppcheck检测代码警告、错误

ubuntu下安装cppcheck

sudo apt-get install cppcheck

  • 运行指令
 cppcheck  *.c  --enable=all
  • 测试的代码示例

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "add.h"#include "CUnit/Basic.h"// A test cppcheck is good work
int main()
{int sum = 0;int a;int i = 0;char * p = NULL;char * q = NULL;int array[5] = {};printf("This is a hello world test.\n");printf("sum:%d \n", add(3, 5));sum = add(3, 10);p = (char *)malloc(4*sizeof(char));q = (char *)malloc(4*sizeof(char));//can not foundstrcpy(p, "hello");free(p);*p = 'a';//out of rangefor(i = 0; i < 6; i++){array[i] = i;}printf("main exit.\n");return 0;
}
  • 测试结果

文件打开未关闭问题,也能被测试出来。

  • 对项目中所有文件进行check

      cppcheck  ./     # cppcheck  路径
    

2021.C/C++静态代码分析工具相关推荐

  1. 软文推荐:常用 Java 静态代码分析工具的分析与比较

    http://www.uml.org.cn/j2ee/201107114.asp 常用 Java 静态代码分析工具的分析与比较 作者:赵卓 , 发布于2011-07-11 , IBM 简介: 本文首先 ...

  2. PVS-Studio C/C++/C++11 静态代码分析工具

    PVS-Studio C/C++/C++11 静态代码分析工具 静态代码分析仪是一种检测代码缺陷.分析对比 商业代码的工具,它分析源代码和它生成的目标 文件,但并不实际运行源代码.应用于对安全性. 稳 ...

  3. OOM分析(1) Android 源,如何分析android的OOM,与java静态代码分析工具

    用MAT分析OOM 很多OOM看似发生在bitmap 分配得时候,但它一般不是rootcause.根本原因都在于本应该自动释放的资源,因为代码的错误,而导致某些对象一直被引用(Reference),例 ...

  4. 如何分析android的OOM,与java静态代码分析工具

    2019独角兽企业重金招聘Python工程师标准>>> 用MAT分析OOM 很多OOM看似发生在bitmap 分配得时候,但它一般不是rootcause.根本原因都在于本应该自动释放 ...

  5. 静态代码分析工具列表分析---代码分析工具列表(30款工具)

    本文是一个静态代码分析工具的清单,共有30个工具.包括4个.NET工具.2个Ada工具.7个C++工具.4个Java工具.2个JavaScript工具.1个Opa工具.2个Packaging工具.3个 ...

  6. 静态代码分析工具清单:开源篇(各语言)

    本文是一个静态代码分析工具的清单,共有26个工具.包括4个.NET工具.2个Ada工具.7个C++工具.4个Java工具.2个JavaScript工具.1个Opa工具.2个Packaging工具.3个 ...

  7. 静态代码分析工具清单:开源篇

    http://hao.jobbole.com/static_code_analysis_tool_list_opensource_lang/?utm_source=blog.jobbole.com&a ...

  8. 静态代码分析工具汇总

    静态代码扫描,借用一段网上的原文解释一下(这里叫静态检查):"静态测试包括代码检查.静态结构分析.代码质量度量等.它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行.代码 ...

  9. 静态代码分析工具列表--常用静态代码分析工具介绍

    代码检测简介 本文是一个静态代码分析工具的清单,但是为公司产品需要付费使用.共有37个公司,有些公司包含多个工具.其中27个公司有多语言 工具,1个公司为PHP工具.2个公司为.NET工具.1个公司为 ...

最新文章

  1. 后处理程序文件大小的变量_【每日一题】(17题)面试官问:JS中事件流,事件处理程序,事件对象的理解?...
  2. css中单位em和rem
  3. WPF 异常其他信息: “对类型“BaseControl.KImgButton”的构造函数执行符合指定的绑定约束的调用时引发了异常。”,行号为“38”,行位置为“22”。...
  4. js url传值中文乱码之解决之道
  5. windows server 触屏_宜昌触屏万能蒸烤箱价格-华春新能源有限公司
  6. MyEclipse中代码提醒功能
  7. 并发编程3-线程调度
  8. java面试 谈谈jvm内存结构
  9. 企业 IT 架构转型之道:阿里巴巴中台战略思想与架构实战
  10. [oracle]Oracle 11g DG搭建(备库使用ASM)
  11. c++ 中 setw()函数
  12. HTML基础之表单提交
  13. CorelDRAW2023新增了哪些功能?
  14. 基于SSH的可扩展的程序代码源码Web在线评测系统
  15. com.intellij.execution.ExecutionException:at com.intellij.execution.rmi.RemoteProcessSupport.acqu报错
  16. c语言和远光灯标志,汽车仪表盘图标大全,汽车仪表盘指示灯图解 - 汽车电子 - 电子发烧友网...
  17. 服务器系统专用驱动程序,NVIDIA显卡win 2008系统专用驱动
  18. Qomo OpenProject Field Test 3发布!
  19. 元素在锚点定位后始终在页面居中显示的方法
  20. golang同时使用命令行参数和配置文件

热门文章

  1. tomcat的php文件上传大小限制,PHP上传文件大小限制的调整 Nginx 413 Request Entity Too Large...
  2. dataframe填充到指定的行数
  3. pytorch构建LSTM处理二分类任务
  4. python打印进程号与线程号
  5. python学习day07-encode和decode
  6. 学习笔记:平衡树-splay
  7. Xampp 配置出现403无法访问
  8. NHibernate Profiler使用方法
  9. python随机产生10个数然后前5个升序后5个降序_编写程序,生成包含 20 个随机数的列表,然后将前 10 个元素升序排列,后 10 个元素降序排列,并输出结果。_学小易找答案...
  10. python用matplotlib画球_python 如何用matplotlib画一个漂亮的圆-百度经验