从ansi c代码自动创建功能框图

时间:2012-01-19 09:38:16

标签: c diagram

有没有人知道能够从ansi c代码创建“功能图”的工具?

“功能图”是指代表文件,功能及其关系概述的图表。我想它就像一个圆圈图。

EG。如果有以下代码:

//MyProgram.c
int main(int argc, char** argv)
{
    Foo();
    Bar();
    return 0;
}

//Slave.h
void Foo();
void Bar();

图表如下图所示:

Function relation diagram http://i44.tinypic.com/503z7q.png

它有官方名称吗?可能是依赖关系图?

我看过Doxygen。但那个人明确指出: Doxygen内置支持为C ++类生成继承图。 许多UML工具也是如此。我没有任何课程。虽然我的c文件可能会接近。

3 个答案:

答案 0 :(得分:5)

您所指的是Call Graph

有一系列工具可用于生成它们:http://en.wikipedia.org/wiki/Call_graph#Software

答案 1 :(得分:3)

有一些软件不再免费,例如www.scitools.com,它有一个名为Understand C的工具。我肯定会做你想要的,还有像BOUML这样的其他工具(这是免费的工具)。除此之外,qiao提供的列表是很好的参考。

答案 2 :(得分:0)

我想我已经找到了我的想法的起源。将代码显示为“具有连接输入/输出的组件”是LabVIEW的概念。 (那时我不是一个完全疯狂的寻找这种图表的方法;)

但据我所知,LabVIEW没有按照我的意愿行事。 LabVIEW用于构建和连接功能。被hw / fw人广泛使用。 (这也是我的目标受众。)它不会将代码反向工程图。

奇怪的是这些图并不存在。在我看来,嵌入式程序员,ansi c,低级别,hw等人都会喜欢它们。