c++ - 源码分析工具?

标签 c++ c code-analysis static-analysis

C 和 C++ 的源代码分析和探索工具似乎非常缺乏。

是否有任何工具可以用来收集有关 C 和/或 C++ 源文件的信息? cscope 完成了我需要的部分功能,Doxygen 看起来更接近。

至少列出所有函数、调用者、被调用者、变量引用等。 也许 Doxygen 的 xml 输出可以工作。

理想情况下,gcc 或 llvm 可以用于此目的,但我还没有找到一种方便的方法来做到这一点。

有什么建议吗?

最佳答案

clang 静态分析器是 llvm 的 clang 前端的一部分,但我不知道它对于 C/C++ 的效果如何。看起来他们的大部分精力都花在了 Objective-C 上。

http://clang-analyzer.llvm.org/

Doxygen 非常适合调用图,您需要安装 GraphViz 并使用 doxywizard 选择图表部分中的调用图和由图调用复选框(专家模式点部分中的 CALL_GRAPH 和 CALLER_GRAPH。)

关于c++ - 源码分析工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3761282/

相关文章:

c++ - 通过 move 语义和右值引用提高性能

c++ - Win32编程 TextOut WM_Paint

c - 'less' linux 命令的备用程序/使 'less' 安全

c++ - WinAPI 函数 Hook 以捕获网络

java - Dodgy - 已知为 null 的值的冗余 nullcheck

c++ - 如何在不吞噬 CPU 的情况下进行大量处理?

c++ - 尝试为套接字 C++ 设置 IP 地址时绑定(bind)失败

c++ - 微 Controller 上 C 和 asm 的替代品

.net - 如何使用 Visual Studio 2015 和 TFS 2015 覆盖默认的无法识别的代码分析单词全局?

java - Java静态代码分析