lint 使用简介
LINT 工具是一种软件质量保证工具,许多国外的大型专业软件公司,如微软公司,都把它作为程序
检查工具,在程序合入正试版本或交付测试之前一定要保证通过了 LINT 检查,他们要求软件工程师在使
用 LINT 时要打开所有的编译开关,如果一定要关闭某些开关,那么要给出关闭这些开关的正当理由。
可想而知,如果从我们编码后第一次编译程序时就使用 LINT 来检查程序,并且保证消除所有的 LINT
告警,我们就不会遇到象今天这么多的告警信息。即使在今天,我们如果能抽出一定的精力来消除程序中
的 LINT 告警,以后再维持这种无告警状态就是很容易的了。我们程序质量的提高也是不言而喻的。
PC-LINT 是 GIMPELSOFTWARE 公司的产品,其中的内容是非常广泛的,光是选项就有 300 多个,
涉及到程序编译及语法使用中的方方面面。本篇培训材料旨在引导读者入门,学会 PC-LINT 的基本使用
方法,起抛砖引玉的作用,能让读者从这里起步继续去研究如何娴熟地使用 PC-LINT 的各种选项,能让
它充分为我们的开发工作服务。
1.概述
如果要给 LINT 工具下一个形象点的定义,那就是:一种更加严格的编译器。它不仅可以象普通编译
器那样检查出一般的语法错误,还可以检查出那些虽然完全合乎语法要求,但很可能是潜在的、不易发现
的错误。请看下面的例子:
1:
2:char*report(intm,intn,char*p)
3:{
4:Øintresult;
5:Øchar*temp;
6:Ølongnm;
7:Øinti,k,kk;
8:Øcharname[11]="JoeJakeson";
9:
10:Ønm=n*m;
11:Øtemp=p==""?"null":p;
12:Øfor(i=0;i13:Ø{
14:Øk++;
15:Økk=i;
16:Ø}
17:
18:Øif(k==1)result=nm;
19:Øelseif(kk>0)result=1;
20:Øelseif(kk<0)result=-1;
21:
22:Øif(m==result)return(temp);
23:Øelsereturn(name);
24:}