彩票走势图

【FAQ】C和C ++的首选静态分析工具 PC-lint Plus 常见问题集(二)

翻译|使用教程|编辑:黄竹雯|2018-12-13 16:02:04.000|阅读 580 次

概述:C和C ++的首选静态分析工具 PC-lint Plus 常见问题集

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

PC-lint Plus是一种静态分析工具,通过分析C和C ++源代码来发现软件中的缺陷。与编译器一样,PC-lint Plus会解析源代码文件,执行语义分析,并构建一个抽象语法树来表示程序。PC-lint Plus采用各种机制,包括数据流分析,数值跟踪,读写分析,强类型检查,功能语义验证和许多其他技术,来提供对单个文件和整个项目强大而全面的分析。

点击下载PC-lint Plus试用版


1.Q:如何让PC-lint Plus支持DIAB DATA C ++编译器的内联汇编?

A:您需要使用:

+rw(_ignore_init)

-dasm=_ignore_init

您还需要 -$ 选项。


2.Q:如何抑制单个文件的信息? -efile不起作用。

A:-efile选项仅适用于在文件名上参数化的信息(例如,消息7,305,306,307,314,404,405,406,537,766)。 此选项将禁止有关文件的信息,而不是文件中的信息。 虽然没有明确禁用特定文件中的信息的选项,但您可以使用以下解决方案之一来实现相同的效果:

  1. 在禁用该选项的文件名和之后的-restore选项之前使用选项-save -e#。 例如,如果您提供给lint的文件列表是1.c 2.c 3.c而您想在2.c中禁用信息701,则可以使用1.c -save -e701 2.c -restore 3.C。
  2. 您可以将选项-save -e#放在要禁用该信息的文件顶部的lint注释中,并在末尾的lint注释中使用-restore选项。例如:
    //lint -save -e701
    ...
    //lint -restore

-save和-restore选项形成一个堆栈以允许嵌套,因此这两种解决方案都不会干扰可能已存在于文件中的任何-save或-restore选项。


3.Q:如何告诉lint忽略我的嵌入式SQL代码?

A:对于SQL,如:EXECSQL ... ;

使用选项:

-dEXECSQL=_to_semi

+rw(_to_semi)

对于code,如:EXEC SQL ... ;

使用选项:

-dEXEC=_to_semi

+rw(_to_semi)


4.Q:如何测试我的代码以实现最大警告级别?

A:使用以下选项:

    +fsc               ;            假设字符串常量是const char *

    +fpn                          在没有检查NULL的情况下警告指针参数的使用

   -strong(AJX)               所有typedefs必须完全匹配

   -w4                             使用最大警告级别

想要购买 PC-Lint Plus正版授权,或者获取更多该产品相关信息的朋友可以点击" "~
海量产品正在参加年终大促,价格优惠!详情请点击" 年终巅峰钜惠 "~

标签:代码优化静态检测工具

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP