PC-lint试用报告

PC-lint试用报告

ID:44172743

大小:579.97 KB

页数:15页

时间:2019-10-19

PC-lint试用报告_第1页
PC-lint试用报告_第2页
PC-lint试用报告_第3页
PC-lint试用报告_第4页
PC-lint试用报告_第5页
资源描述:

《PC-lint试用报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一PC-Lint介绍PC-Lint是GIMPELSOFTWARE公司开发的C/C++软件代码静态分析工具,不仅能够对程序进行全局分析,识别没有被适当检验的数组下标,报告未被初始化的变量,警告使用空指针以及冗余的代码,还能够有效地帮你提出许多程序在空间利用、运行效率上的改进点。从某种意义上说。PC-Lint是一种更加严格的编译器,它除了可以检查出一般的语法错误外,还可以检查出那些虽然符合语法要求,但很可能是潜在的、不易发现的错误。二PC-Lint的代码检查功能PC-Lint能够检查出很多语法错误和语法上正确的逻辑错误,PC-Lint为大部分错误消息都分配了一个错误号,编号小于

2、1000的错误号是分配给C语言的,编号大于1000的错误号则用来说明C++的错误消息。表1列出了PC-Lint告警消息的详细分类:表1列出了PC-Lint告警消息分类错误说明CC++告警级别语法错误1-1991001-11991内部错误200-299 0致命错误300-399 0告警400-6991400-16992消息700-8001700-18993可选信息900-9991900-19994PC-Lint告警分为0~4级,其中0级是内部错误或致命错误,1级告警是句法错误,2级告警是警告,3级是信息,4级是可选的,4级缺省是不打开的。0级告警是不允许出现的,1级告警一般也

3、是不允许出现的,如果出现,说明可能PC-Lint配置上可能有问题,或者程序根本编译不过,2级告警一般也是不能屏蔽的,2级告警很多是内存资源没有释放,指针越界一类的警告,会产生严重问题,3级告警有些告警也是非常重要的,会引起严重问题,有些告警属于提示信息,问题不是很大,所以3级告警里要分情况对待。0~2级告警都不能使用-e选项进行屏蔽,只能使用-esym,-emacro,-sem之类的选项进行屏蔽;3级告警要根据具体情况,有些可以使用-e选项进行屏蔽,有些不可以。PC-Lint提供了大概300多个选项,近2000个告警,包括强类型检查、变量值跟踪、赋值顺序检查、弱定义检查、格

4、式检查、缩进检查、const变量检查、volatile变量检查等。具体选项的使用说明见PC-Lint使用说明三使用方法PC-Lint重要文件的说明:nLINT-NT.EXE:可执行文件,已升级到v8.00w。nPATCH.EXE:用于升级版本的工具。nmsg.txt:消息描述文件,描述了各种警告信息。npc-lint.pdf:PC-Lint在线手册。nreadme.txt:在线手册的补充。nlntco-xxx.lnt编译器选项文件。env-xxx.lnt编辑环境选项文件。lib-xxx.lnt库相关的选项文件。sl-xxx.lnt非ANSI编译器的标准库模块。au-xxx

5、.lnt推荐的检查规则文件,例如:MISRA规则。std.lnt内存模型等全局性的选项。PC-Lint没有可视化的界面,可以从命令行、集成开发环境和编辑器中启动运行。PC-Lint配置PC-lint软件性价比高,易于学习,容易推广和固化到软件开发测试流程中去,所以在全世界得到了广泛的应用。PC-lint使用方法很简单,可以用命令行方式进行,例如lint-nt–ustd.lnttest1.ctest2.ctest3.c也可以使用MAKEFILE的方式。此外,它还可以集成到很多开发环境或常用的代码编辑软件中,比如集成到SourceInsight/SLICKEDIT/MSVC6.

6、0/KEILC..等。PC-Lint还支持ScottMeyes的名著(EffectiveC++/MoreEffectiveC++)中说描述的各种提高效率和防止错误的方法。1手工配置PC-Lint1.Lint目录下建立std.lnt文件。std.lnt为lint配置文件,如指定编译器类型、头文件路径、宏等;如下:/*指定lint使用的编译工具,lib及告警选项*/au-sm.lntco-msc60.lntlib-mfc.lntlib-stl.lntlib-w32.lntlib-wnt.lntlib-atl.lntoptions.lnt-si4-sp4/*添加头文件*/-ID:

7、VC++Include-ID:VC++IncludeSYS-ID:VC++IncludeObjModel-ID:VC++IncludeGL/*添加宏定义*/-DDEBUG其中:-Ixxx:指定Lint时包含的头文件-Dxxx:指定lint时定义的宏在本例中,lint使用VC6.0方式进行编译,支持windows的MFC、STL、Win32、WinNT和ATL库,int型和指针型为4byte,告警选项在options.lnt文件中。另外,需要将文件制定的lnt文件从./lnt/目录拷贝到当前目录

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。