首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >选择静态代码分析工具

选择静态代码分析工具
EN

Stack Overflow用户
提问于 2008-08-05 21:19:40
回答 14查看 56.7K关注 0票数 69

我正在处理一个在UNIX环境中用C编写代码的项目。我一直在使用lint工具来检查我的源代码。Lint已经存在很长一段时间了(从1979年起),谁能建议我可以使用的最新代码分析工具呢?最好是免费的工具。

EN

回答 14

Stack Overflow用户

回答已采纳

发布于 2008-08-05 22:17:24

不要忽视编译器本身。阅读编译器的文档,查找它可以提供的所有警告和错误,然后启用对您有意义的尽可能多的警告和错误。

另外,一定要告诉编译器将警告当作错误来处理,这样您就不得不立即修复它们(-Werror on gcc)。顺便说一句,不要被-Wall愚弄到gcc身上,并不是所有的警告都是有效的。

您可能需要检查valgrind (免费!)-它“自动检测到许多内存管理和线程错误,并详细分析您的程序。”这不是一个静态检查,但它是一个伟大的工具!

票数 35
EN

Stack Overflow用户

发布于 2008-08-05 21:42:22

对于C代码,绝对应该使用弗莱克林特。我用了它近15年,并发誓。它真正伟大的特性之一是,可以通过代码中的注释("/* lint-e123*/“)选择性地关闭警告。这是一个强大的文档工具,当你想要一些与众不同的东西的时候。“我正在关闭警告X,因此,我做X是有充分理由的。”

对于任何进入有趣的C/C++问题的人,请查看他们站点上的一些示例,看看您是否可以在不看提示的情况下发现bug。

票数 16
EN

Stack Overflow用户

发布于 2008-08-06 00:40:03

我听说过关于clang静态分析仪的一些好消息,IIRC使用LLVM作为后端。如果这是在您的平台上实现的,这可能是一个很好的选择。

据我所知,它所做的不仅仅是语法分析。例如,“自动找虫”。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档