文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发数据结构代码静态分析工具PC-LINT安装配置
精品推荐
特别推荐
·网游外挂编写完全攻略
·开发WDM型的USB设备驱动程序
·数据库设计范式深入浅出
·理解软件保护技术之序列号方式
·大型网站必鉴:分销渠道的结构
·你的代码真的很健壮吗
·利用HOOK拦截封包原理
·四种网络游戏外挂的设计方法
·程序语言效率比较
·五子棋算法
热点TOP10
·DataGrid控件中如过有四列,想去删除一列,怎么办
·逆向思维 《魔兽世界》封包分析
·剖析备份个人数据十大注意事项
·BPEL的基本活动介绍
·BPEL模型基础
·VS2005视频教程之站点地图[视频]
·DB2数据库部分日常实用操作
·五子棋算法
·游戏编程入门之精灵ISprite
·数据结构教程 第十五课 串的表示和实现

代码静态分析工具PC-LINT安装配置

日期:2007年9月15日 作者: 查看:[大字体 中字体 小字体]



  PC-Lint是C/C++软件代码静态分析工具,你可以把它看作是一种更加严格的编译器。它不仅可以检查出一般的语法错误,还可以检查出那些虽然符合语法要求但不易发现的潜在错误。

  C语言的灵活性带来了代码效率的提升,但相应带来了代码编写的随意性,另外C编译器不进行强制类型检查,也带来了代码编写的隐患。PCLint识别并报告C语言中的编程陷阱和格式缺陷的发生。它进行程序的全局分析,能识别没有被适当检验的数组下标,报告未被初始化的变量,警告使用空指针,冗余的代码,等等。软件除错是软件项目开发成本和延误的主要因素。PClint能够帮你在程序动态测试之前发现编码错误。这样消除错误的成本更低。

  使用PC-Lint在代码走读和单元测试之前进行检查,可以提前发现程序隐藏错误,提高代码质量,节省测试时间。并提供编码规则检查,规范软件人员的编码行为。

  由于PC-LINT对于一般程序员来说可能比较陌生,有好多人安装了也不知道怎样配置和使用。

  下面我就根据自己的安装和配置心得对PC-Lint的安装、配置及使用进行下详细说明.本人主要介绍了将PC-Lint集成到VC++6.0和SourceInsight的方法和步骤。

  (一)Windows下C/C++开发工具中,VC6使用较为普遍,因此这里先讲下VC6.0环境中集成pclint的步骤.

  首先, 当然要下载软件,正版软件要200多$呢,买不起!所以只好网上找免费的拉。从http://www.61ic.com/down/othe/pclint.rar处可以下载到一个8.0版本的pclint.

  1.将pclint.rar解压至c:\, 这样lint文件就位与c:\pclint(安装目录)下了。

  2.将c:\pclint\lnt 下的3个文件lib-w32.lnt,env-vc6.lnt,co-msc60.lnt拷贝至c:\pclint下, 再在安装目录下创建std.lnt和options.lnt两个文件,其中std.lnt的内容如下

  // contents of std.lnt

  c:\pclint\co-msc60.lnt

  c:\pclint\lib-w32.lnt

  c:\pclint\options.lnt -si4 -sp4

  -i"D:\Program Files;D:\Program Files\Microsoft Visual Studio\VC98\Include"

  //end

  其中-i后面的路径名为VC的安装路径和VC Include 文件路径,根据自己的修改便可。

  options.lnt 内容可为空,为定制内容,以后需要时再添加。

  准备工作做完了,下一步就是要将pclint集成到VC6中去,先配置lint使之能对单个C或C++文件进行检查。

  1.打开VC6,tools--->customize-->tools 新建一个名为pclint的项,在下面填入

  command: C:\pclint\lint-nt.exe

  arguments: -u c:\pclint\std.lnt c:\pclint\env-vc6.lnt "$(FilePath)"

  Use Output Window 打上勾

  close 完成。 这个在你VC窗口tools菜单下应该多了一个pclint选项,可以用它来运行lint程序,对你的c/c++代码进行静态检查了。

  现在就可以用个小程序测试一下pclint了

//test1.cpp

#include
class X
{
 int *p;
 public:
  X()
  { p = new int[20]; }
  void init()
  { memset( p, 20, 'a' ); }
  ~X()
  { delete p; }
};
  编译这个文件,看下你的编译器给你多少警告,再运行下lint, 可以自己对比一下。

  我的机器上,VC产生0 errors 0 warnings, 而lint程序产生了如下8条警告信息,有些还是很有用处的提示,这里就不一一分析了.

test.cpp(12): error 783: (Info -- Line does not end with new-line)
test.cpp(7): error 1732: (Info -- new in constructor for class 'X' which has no assignment operator)
test.cpp(7): error 1733: (Info -- new in constructor for class 'X' which has no copy constructor)
 { memset( p, 20, 'a' ); }
test.cpp(9): error 669: (Warning -- Possible data overrun for function 'memset(void *, int, unsigned int)', argument 3 (size=97) exceeds argument 1 (size=80) [Reference: test.cpp: lines 7, 9])

test.cpp(7): error 831: (Info -- Reference cited in prior message)

[1] [2] [3] 下一页 




上一篇:在SourceInsight中集成版本管理工具

下一篇:Ruby初体验之搭建运行环境

相关文章:
·QQ空间免费换皮肤代码
·qq空间皮肤背景代码:QQ空间不用Q币更换主页皮肤方法
·最受欢迎的网管工具集
·一次入侵过程的公开分析
·QQ空间最新黄钻皮肤代码
·QQ空间透明flash代码
·杀毒技巧系列:杀毒、防恶意代码、脚本病毒的不完全合集
·迎刃而解——破解密码的常用工具
·如何在QQ空间加入播放器代码
·如何在交换机上配置VLAN
相关软件:
·黑客视频教程 VMware虚拟机的安装和使用
·如何安装双系统
·灵豚课件制作工具——课件精灵v1.0 beta
·U盘超级工具大全
·电脑装机、系统维护工具盘 2003版
·《反恐精英CS1.6》完整安装版本
·电脑安装与维修实用技术1
·3D 动画与建模:人体的综合与分析技术
·MATLAB 7.0 RAR 安装版
·豪杰超级视频转换工具V2.0

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot