24

我有一个大型的 95% C、5% C++ Win32 代码库,我正在尝试了解它。

有哪些现代工具可用于为 C 或 C++ 项目生成调用图?

4

4 回答 4

17

你试过doxygencodeviz吗?

Doxygen 通常用作文档工具,但它可以在打开CALL_GRAPH/CALLER_GRAPH选项的情况下为您生成调用图。

维基百科列出了许多您可以尝试的其他选项

于 2009-08-07T17:46:50.570 回答
6

您是否尝试过 SourceInsight 的调用图功能?

于 2009-08-07T17:45:41.977 回答
4

好的旧 cflow 适用于 C。请参阅此处了解实现。

于 2009-08-08T11:11:57.613 回答
2

任何体面的静态分析工具都应该具有此功能(以及此类工具所做的所有其他功能)。 维基百科有一个很好的此类工具列表。

另一组可能值得一试的工具是覆盖工具。覆盖工具生成的调用图将仅包含在程序运行期间实际发生的调用。最初,这可能比完整的调用图对您更有帮助。对于 Windows,我无法对此提出任何建议,但对于 linux 项目,我强烈推荐gcovlcov

于 2009-08-10T09:18:55.687 回答