VIM整合PcLint

PCLINT可对源代码进行静态检查,通过它可以发现许多隐藏在代码的BUG,PCLINT可以很方便整合到VC,SourceInsight,其实通过make命令也可以将PcLint整合到VIM,在QuickFix窗口显示Lint结果,通过:cn,:cp可很方便跳转到有BUG的代码行.

先安装配置PCLINT:http://www.yuanma.org/data/2006/0529/article_512.htm
    通过对Lint结果的重定向可以确定Lint的错误返回格式,上面链接的Lint结果原型为:
    test1.cpp(7): error 1732: (Info -- new in constructor for class 'X' which has no assignment operator)   
通过该原型可以设置VIM里的错误返回格式,即
    set errorformat=%f(%l):/ %t%*[^0-9]%n:/ %m
    其中 %f 对应test1.cpp
         %l 对应圆括号里的7,也就是指向本代码文本的第7行
         %t 错误类型,这里对应error的第一个字母,它和其后的正则表达式匹配"error"
         %n 错误号,这里对应1732
         %m 匹配后面的错误信息
         这里要对空格进行转义处理,所以在空格前加上了转义字符"/"
         其它具体细节可:help errorformat   

当运行:make后产生的文本信息会有上面的errorformat进行全行匹配,匹配成功后在QuickFix窗口里生成对该代码文件的映射链接,通过:cn :cp可以直接跳到%f匹配文件的%l匹配行
    make指令并不指向PcLint的可执行文件,但可以重新指定:
    :set makeprg=c:/pclint/lint-nt.exe/ -u/ c:/pclint/std.lnt/ c:/pclint/env-vc6.lnt/ /"%/"
    和errorformat一样,要对空格进行转义,对"也要进行转义,%为当前文件的路径

OK,通过上面的配置后便可以进行静态检查了
    执行:make后:cw即可看到Lint结果了

 注:PCLint生成的结果并非只有这里提到的一种,其它结构的LINT结果也可以Make,只不过要重新设置errorformat为符合其输出格式的标识。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值