• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
水滴石穿·C语言之代码检查工具
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
水滴石穿·C语言之代码检查工具
软件发布 水滴石穿·C语言之代码检查工具
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 认证考试 >> 程序员 >> 水滴石穿·C语言之代码检查工具

水滴石穿·C语言之代码检查工具

添加时间: 2007-4-9 1:00:24  作者: 程序员认证参考  阅读次数:136   来源: http://www.d9soft.com

       

 概述

  pc-lint是一个历史悠久,功能异常强劲的静态代码检测工具。它的使用历史可以追溯到计算机编程的远古时代(30多年以前)。经过这么多年的发展,它不但能够监测出许多语法逻辑上的隐患,而且也能够有效地帮你提出许多程序在空间利用、运行效率上的改进点,在很多专业级的软件公司,比如microsoft, pc-lint 检查 无错误无警告是代码首先要过的第一关,我个人觉得,对于小公司和个人开发而言,pc-lint也非常重要,因为基于开发成本考虑,小公司和个人往往不能拿出很多很全面的测试,这时候,pc-lint的强劲功能可以很好地提高软件的质量。

  功能

  1) pc-lint是一种静态代码检测工具,可以说,pc-lint是一种更加严格的编译器,不仅可以象普通编译器那样检查出一般的语法错误,还可以检查出那些虽然完全合乎语法要求,但很可能是潜在的、不易发现的错误。

  2) pc-lint不但可以检测单个文件,也可以从整个项目的角度来检测问题,因为c语言编译器固有的单个编译,这些问题在编译器环境下很难被检测,而pc-lint在检查当前文件的同时还会检查所有与之相关的文件,可想而知,它会对我们有很大的帮助。

  3) pc-lint支持几乎所有流行的编辑环境和编译器,比如borland c++从1.x到5.x各个版本、borland c++ build、gcc、vc,vc.net、watcom c/c++、source insight、intel c/c++等等,也支持16/32/64的平台环境。

  4) 支持scott meyes的名著(effective c++/more effective c++)中说描述的各种提高效率和防止错误的方法。

  四步速成pc-lint概述

  这么好的工具,当然是先拿起来用了再说,这里分为四步,保证你马上可以使用pc-lint了,当然,如果你上手以后,想细致深入学习这个工具,可以在网上查找相应的资料,另外在我的另一个系列文章《软件开发的七种武器》中有一篇是讲述 pc-lint使用的,比这篇要深入细致一些,如有兴趣,也可以看看。
  第一步:安装&设置

  安装和通常的软件没有什么不同。

  安装结束后在pc-lint安装目录下运行config.exe,各项设置简要解释如下:

  a) 第一步,给出pc-lint的安装路径和选择设置的保存文件。

  b) 第二步,选择你所使用的c/c++编译器:比如visual c++ 6.x。

  c) 第三步,选择内存模式:比如32 bit flat model。

  d) 第四步,选择所使用的库:比如mfc,owl,等,可多选,在windows下开发的一般要选中windows 32 bit。

  e) 第五步,c++编程提出过重要建议的作者,选择某作者后,他提出的编程建议方面的选项将被打开:比如scott meyers,可不选。

  f) 第六步,头文件的设置:可在后面步骤中手工添加。

  第二步:整合pc-lint到选定的编译环境

  当你在上述第二步中选择了编译器后,可以在pc-lint目录下找到一个"env-选用的编辑环境.lnt"文件,比如对于source insight 是env-si.lnt,对于vc6是env-vc6.lnt。

  打开此文件,根据上面的描述,配置你的编译器,下面以vc6为例:

  ·选取菜单 tools customize.....

  ·选取 tools 标签

  ·点按主对话框上方的虚线小方框 new

  ·输入 name: pc-lint

  ·输入 command: c:lintlint-nt.exe,假设安装到此路径

  ·输入 arguments: c:lintstd.lnt ?(filepath)?7)选择 (x) use output window

  ·close

  ·完成后,在tools菜单下就会有一项pc-lint选项。下面是tool配置图:

  第三步:lint单个c文件

  a) 打开一个c文件

  b) 运行第2)步集成上的pc-lint菜单项

  c) lint结果会在一两秒之内出来。告警的解释可参考lint安装目录下msg.txt文件,打开文件,通过查找告警号码定位,就可以看到比较详细的说明。

  第四步:lint多个c文件

  a) 在lint软件目录下建立prjlint.lnt文件,文件的第一行是使用的lint配置文件名,从第二行开始,列出想所有要lint的*.c文件名,一行一个。如果要把结果输出到文件,在前面加上一行"-os(文件名)"(例如:"-os(c:lint esult.txt)")。样例:yf_config.lnt

// 以下为自己想要进行lint的.c文件,
g:src t t1.c
g:src t t2.c
…

  b) 用2)介绍的方法在source insight"中介绍的方法增加一条"pc-lint project"命令,所有设置与"pc-lint"设置相同,除了

  ①"custom commands"对话框中"run"编辑框的文字由"c:lintlint-nt.exe filename.lnt %f"改为"c:lintlint-nt.exe prjlint.lint",也就是把配置文件名改为prjlint.lnt,并去掉未尾的"%f"

  ②设置的快捷键与pc-lint要区别开来

  利用下面的dos命令可以用来得到一堆*.c文件的清单。例如:

  ① 列出c:src下所有*.c文件,并保存到c:srcfilelist.txt:

dir c:src*.c /b >c:srcfilelist.txt

  ② 列出c:src下,包括src的子目录下的所有的*.c文件,,并添加到c:srcfilelist.txt的未尾:

dir c:src*.c /s/b >>c:srcfilelist.txt

  pc-lint 重要文件说明

  msg.txt :解释告警的内容。

  选用的.lnt :包含头文件的路径,-i选项。

  env-选用的编辑环境.lnt :讲述如何将pc-lint与对应的编辑环境结合起来。

  co-xxx.lnt :选定的编译器。

  std.lnt :内存模型等全局性东西。

  lib-xxx.lnt :库类型的列表,包括标准c/c++库,mfc库,owl库等等。

  au-xxx.lnt :c++编程提出过重要建议的作者,选择某作者后,他提出的编程建议方面的选项将被打开。

  options.lnt :反映全局编译信息显示情况的选项文件。

 

上下文章:

 

上一篇文章: 数据结构:栈和递归求两顶点所有简单路径 下一篇文章: 数据结构:如何产生素数

相关文章:

  • 谷歌新工具能绘“流感传播地图”(图)
  • 谷歌百科全书网站Knol推出多种语言服务
  • SQL索引优化方法(实例代码)
  • 火星文:最时髦的网络语言
  • 诺基亚拟公开Symbian源代码

相关软件:

  • 超级信封打印工具 v8.2Q 专业版
  • HDD硬盘播放器测试工具 1.0
  • 图标小工具 V1.1
  • 易语言 V4.04 简体中文正式版
  • 银行利息计算工具 V2.0
  • PC-Cillin 中国区病毒码升级工具 5.610.60

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

认证考试分类导航

  • 微软认证
  • 计算机等级考试
  • 软件水平考试
  • 思科认证
  • Oracle认证
  • Linux认证
  • JAVA认证
  • 网络工程师
  • 系统工程师
  • 程序员

本类经典文章推荐

  • 软考系统分析师考试须知
  • C++箴言:绝不在构造或析构期调用...
  • 数据结构:判别是否为二叉排序树的...
  • 一个程序员的成长的六个阶段
  • 程序员英语试题常见硬件名和设备名
  • 从一个程序出发详细研究DataReader
  • 如何判断程序处于运行环境还是调试...
  • 程序高手必读:写好C程序的10条秘...
  • 程序员介绍:程序员的“素质”是什...
  • C++箴言:让=返回一个*this的引用

程序员阅读排行

  • 补码加、减运算规则及溢出判断
  • 程序员考试:证书样本
  • 数据结构:判别是否为二叉排序树的...
  • VC++动态链接库(DLL)编程深入浅出...
  • VC++动态链接库(DLL)编程深入浅出...
  • 数据结构:打印线索二叉树的中序遍...
  • 数据结构:栈和递归求两顶点所有简...
  • DirectX8.0简介(8)
  • 水滴石穿·C语言之代码检查工...
  • 浮点数的加减乘除运算步骤

认证考试阅读总排行

  • 全国计算机等级考试一级模拟试题01
  • 全国计算机等级考试一级模拟试题10
  • 全国计算机等级考试一级模拟试题08
  • MCSD简介
  • 全国计算机等级考试一级考试最新模...
  • 全国计算机等级考试一级模拟试题02
  • 全国计算机等级考试一级模拟试题07
  • 全国计算机等级考试上机考试应试技...
  • 一级(WINDOWS)试题解析-Word篇
  • 全国计算机等级考试一级模拟试题06

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有