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

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

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

PC-lint Plus试用版


1.Q:如何告诉lint在哪里找到我的编译器头文件/strong>

A:使用-i选项或INCLUDE环境变量为当前目录中找不到的文件指定搜索路径。

您可以多次使用-i选项指定多个搜索目录。-i选项和目录名称之间不应有空格,终止目录分隔符是可选的。目录将按照指定的顺序被搜索。例如,要在/usr/local/include中查找头文件,然后在/usr/include中查找,您可以使用:

               -i/usr/local/include -i/usr/include

或者,您可以将INCLUDE环境变量设置为以分号分隔(Windows)或冒号分隔(Unix)的目录列表。例如:

       在DOS/Windows上:set INCLUDE=/usr/local/include;/usr/include

       在UNIX/LINUX上:export INCLUDE=/usr/local/include:/usr/include

您可以使用-incvar选项指定备用环境变量名称。

如果设置了+fim标志选项(默认情况下),则可以使用一个-i选项指定多个目录,方法与上述INCLUDE变量相同。例如:

               -i/usr/local/include;/usr/include

–i选项与-i选项相同,但只有在搜索使用-i选项指定的所有目录之后才搜索使用此选项指定的目录。

有关-i,–i和-invcar选项,请参见参考手册的第5.7节,有关INCLUDE环境变量,请参见第15.2.1节。


2.Q:如何让lint控制编译器头文件/strong>

A:Lint使用“library”头文件来指定程序员无法控制的头文件(例如编译器头文件)。默认情况下,所有来自外部目录的#includes或包含在<>中的#includes都被视为“library”。这可以通过使用+libclass选项进行修改,并可使用+libdir/-libdir和+libh/-libh选项进行微调。然后,您可以使用-wlib,-elib和-elibsym选项来控制从库头文件发出的信息。随PC-lint Plus一起分发的编译器选项文件通常包含-wlib(1)选项,该选项将库头文件的lint输出限制为仅错误(抑制警告和信息性信息)。


3.Q:我想为C文件抑制错误,例如715,不是为C ++文件抑制错误。

A:使用-header选项,如:

            -header(x.h)

然后在头文件中(本例中为x.h):

            #ifdef __cplusplus

                  //lint +e715

           #else

                //lint -e715

          #endif

未完待续~


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

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

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年11月20日
下一篇 2018年11月20日

相关推荐

发表回复

登录后才能评论