Advertisement

使用splint检测C/C++内存泄漏

阅读量:

前一篇文章中已对静态内存分析的概念及其能够识别的程序逻辑问题进行了说明。上一篇内容主要介绍了cppcheck工具在Linux系统中的应用方式,而本文则将重点阐述splint工具具备的代码逻辑检测能力,并探讨其与cppcheck工具之间的差异之处。

一、 什么是splint

(原版的 LCLint) 是一款遵循 GNU 免费许可协议的 Lint 工具,其主要功能是动态检测 C 语言程序中潜在的安全隐患及编码缺陷。Splint 能够执行多方面的常规验证,例如识别未被引用的变量、类型匹配异常、调用未声明变量、存在不可达代码段、忽略函数返回值、控制流未能正确返回以及可能引发无限循环等问题。

二、 splint与cppcheck的区别

首先,第一个差异在于,cppcheck在Jenkins环境中具备插件支持功能,而splint则缺乏相应的插件支持。此外,splint相较于cppcheck在检测方面更为严格,但这一特性也取决于具体版本,因此难以做出确切的结论。

三、如何在linux系统中安装splint

官网: http://splint.org/download.html

Linux系统下的安装步骤:

![](https://ad.itadn.com/c/weblog/blog-i

全部评论 (0)

还没有任何评论哟~