- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
pclint告警消除报告
pclint告警消除报告
PCLint选项详解
PCLint选项详解
目 录
1 错误信息禁止选项 2 变量类型大小选项 3 冗余信息选项 4 标志选项 5 格式输出选项 6 其它选项
7 编译器相关选项 8 各种使用说明
8.1 库模块文件的使用
8.2 汇编(非C、C++)文件的处理 8.3 强类型
8.4 PCLint的预处理符 8.5 选项的处理顺序 8.6 使告警最大化
9 附录:PCLint在Source Insight中的使用9.1 Source Insight的正规表达式
3 4
5 5 8 9
13 14 14 15 15 17 17 17 18 18
以下为PC-lint for C/C++ (NT) Ver. 7.50v版本配置参数的详细解释及用法举例。 LINT选项可以放在注释中,例如:
/*lint option1 option2 ... optional commentary */ 选项可以有多行 //lint option1 option2 ... optional commentary
选项仅为一行
选项间要以空格分开,lint命令一定要小写,并且紧跟在/*或//后面,不能有空格。如果选项由类似于操作符和操作数的部分组成,例如-esym(534, printf, scanf, operator new),其中最后一个选项是operator new,那么在operator和new中间只能有一个空格。
选项还可以放在宏定义中,当宏被展开时选项才生效。例如: 告警
LINT的选项很多共有300多种,大体可分为以下几类:
#define DIVZERO(x) /*lint -save -e54 */ ((x) /0) /*lint -restore */
允许除数为0而不
I. 错误信息禁止选项
说明: “-”
: 表示禁止输出相应的错误消息
“+” : 表示允许输出相应的错误消息 “#” : 允许使用通配符“?”和“*”
除了900级别(900-999)和1900(1900-1999)级别的告警消息缺省是关闭的外,其它的告警消息缺省均是打开的。
-e#
: 禁止输出告警号为#的消息
-e(#) : 对于下一个表达式禁止输出告警号为#的消息 !e# --e(#)
-eai : 整型数子类参数不一致,如:char/short vs. int
-ean : 名义上的参数不一致,如:字节数相同(都是32位)的int和long等 -eas : 参数大小相同,如:如果int和pointer字节数相同,那么如果f()的参数应该
是pointer的话,用f(3)整型数调用就会报错,设置此项可以关闭告警 : 在本行禁止输出告警号为#的消息
: 对当前的整个表达式禁止输出告警号为#的消息
-eau : 参数类型一致,但是符号类型不一致,如:unsigned int和int
以上四个选项主要用于非原型的旧风格的C语言程序。其中eas涵盖了ean和eau。
-efile(#,File)
对指定文件禁止输出告警号为#的消息
-efunc(#,Func) 对于函数Func,禁止输出告警号为#的消息 -elib(#) : 对于库头文件禁止输出告警号为#的消息 -elibsym(#) 于
程
要
想完全的关闭该告警,使其在头文件和源文件中均不出现,请使用本选项
序中使用了会导致告警#的变量等,在分析源程序时还是会告警的,因此
elib之处在于-elib(#)仅仅当分析头文件时不输出相应的告警,如果你在源: 对于所有库头文件中的符号禁止输出告警号为#的消息,此告警不同
-emacro(#,Symbol) 对于宏Symbol,当其展开时禁止输出告警号为#的消息
-emacro((#),Symbol)对于宏Symbol,当其展开时禁止输出告警号为#的消息,与上一个选项的
区别是它会先将宏加上一对括号再判断,如:#define DIVIDE( n , m ) n / m 那么它会在宏展开时将n / m看作( n / m )来处理。用处不是很大。
-epn : 名义上的指针不一致,如:对于指向字节数大小相同的变量的指针 -eps : 指针指向的类型不同,但大小字节数相同 -epu : 指针指向的类型仅仅符号不一致 -epp : 指针指向的类型不确定 -epuc -epnc
: 指针指向的字符串类型,其符号不一致 : 指针指向的字符串类型,仅仅名义上不同
-esym(#,Symbol) 对于指定的符号Symbol(可以是变量名、函数名等),禁止输出告警号为
#的消息,符号Symbol中可以使用通配符*和?。-e#的级别比较高,因此对 于-e714 +esym( 714,alpha ),后一个选项将不起作用
-etd(TypeDiff
您可能关注的文档
最近下载
- 某县关于巩固拓展脱贫攻坚成果同乡村振兴有效衔接工作的表态发言.docx VIP
- 体格检查【呼吸内科】--PPT课件.ppt VIP
- 3.2 营造清朗空间 课件 统编版道德与法治 八年级上册.pptx VIP
- 活动课 家国情怀与统一多民族的演进 课件-高一上学期统编版(2019)必修中外历史纲要上.pptx VIP
- 2024高考英语天津卷历年作文范文衡水体临摹字帖(描红无参考线).pdf VIP
- 水工建筑物止水带技术规范DLT52152023年.docx
- Tableau数据可视化基础.pptx VIP
- 2025年职业技能邮件快件安检员参考题库含答案解析(5套试卷).docx VIP
- 地面数字电视接收技术考核试卷.docx VIP
- 呼吸科病史采集.pptx VIP
文档评论(0)