是否有用于确定程序在运行时输入哪些功能的工具?

时间:2019-07-13 08:58:34

标签: c code-analysis

我需要一些工具来找出代码的哪些功能在某个配置和输入中执行;有一些代码分析工具,但它们显示了代码的所有功能流程。

1 个答案:

答案 0 :(得分:0)

从您的问题中我不能完全确定您需要分析的具体程度。我插入了一些链接,可能会对您的搜索有所帮助。

通常,您可以轻松地生成所谓的函数call graph,该图是函数调用哪个的图。

Static analysis工具通常可以执行此操作。我使用了Eli Bendersky的pycparser来生成C代码的调用图。静态分析只能考虑可以静态推断的内容,即无需运行代码。

如果您需要更高的精度,并且只需要特定config +输入的结果程序流,建议您使用dynamic analysis tool,它通过运行代码来执行分析。 valgrind's callgrindhere is a tutorial是一种可能有用的工具。