首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C:图解一个大型图书馆

C:图解一个大型图书馆
EN

Stack Overflow用户
提问于 2010-10-17 20:10:05
回答 3查看 1.1K关注 0票数 7

是否有任何工具可以帮助绘制一个大型C库?我正在进行一个将现有C库移植到C++的项目。C库在很大程度上没有文档化,没有图表。我想用一个案例工具来帮助我理解各种文件是如何交互的。大多数文件中都有外部变量。

如果可能的话,我更希望有一个可视化的图表来更好地理解代码的流程。我不熟悉程序语言的图表工具(或者如果它存在的话)。我记得在大学里,我们用层次结构和数据流图来描述程序语言。

我知道有很多工具来描绘OO语言,但我想要一个C。任何帮助都将不胜感激。

建议

强力氧原

  • CodeProject教程
  • DO2官方教程
  • Stackoverflow强制无文档C代码
  • 如果您需要图形表示,请记住下载Graphviz,并设置点路径,即:“C:\Program\Graphviz2.26.3\bin\”

它可以在三方面帮助你: 它可以从一组文档源文件生成在线文档浏览器( HTML)和/或脱机参考手册(in )。还支持在RTF (MS-Word)、PostScript、超链接PDF、压缩HTML和Unix手册页中生成输出。文档是直接从源代码中提取的,这使得使文档与源代码保持一致变得更加容易。您可以配置doxygen从无文档的源文件中提取代码结构。这对于在大型源发行版中快速找到方法非常有用。您还可以通过包含依赖关系图、继承图和协作图来可视化各个元素之间的关系,这些关系图都是自动生成的。您甚至可以“滥用”doxygen来创建正常的文档。

顺铂

  • 开源/学术及商业牌照(MSVS插件)

提高您的代码基础质量。CppDepend是一种简化复杂C\C++ (原生、混合和COM)代码库管理的工具。架构师和开发人员可以通过比较不同版本的代码来分析代码结构、指定设计规则、进行有效的代码评审和掌握演化过程。这些案例研究显示了CppDepend对于深入了解您的体系结构、设计和实现的实用价值。重构和改进您的设计和架构。CppDepend提供了有用的图表来分析您的设计和架构。CQL语言为您提供了创建自定义查询的灵活性,并深入了解了您的代码库。下面是一个使用CppDepend来帮助您重构的示例。协助你的迁徙。了解现有的迁移。CppDepend帮助您在迁移过程中,您可以在这里找到在您的迁移过程中使用CppDepend的优点。

ctag

  • (nedit,vim,emacs) VIM教程
    • 类名
    • 宏定义
    • 枚举名称
    • 枚举器
    • 函数定义
    • 函数原型/声明
    • 类、接口、结构和联合数据成员。
    • 结构名称
    • 打字机
    • 工会名称
    • 变量(定义和外部声明)

索普

  • (cmd线,vim) VIM教程
    • 允许搜索下列代码:
    • 所有对符号的引用
    • 全球定义
    • 函数调用的函数
    • 调用函数的函数
    • 文本字符串
    • 正则表达式模式
    • 档案
    • 包括文件在内的文件

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-10-17 20:13:02

含氧可以生成各种类型的交互图-文件、函数调用等。使用EXTRACT_ALL配置变量集,它将生成图表和交叉引用的文档,即使没有文档注释的代码也是如此。

票数 7
EN

Stack Overflow用户

发布于 2010-10-17 21:13:33

如果您在Windows上工作,CppDepend使用一种查询语言和在依赖关系图中移动的能力扩展了you。

票数 3
EN

Stack Overflow用户

发布于 2010-10-17 20:33:58

尼克·迈耶提到的氧气可能是个不错的选择。您还可以尝试经典的交叉引用工具ctag和cscope,这些工具可以作为独立工具使用,也可以与文本编辑器集成。

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

https://stackoverflow.com/questions/3955068

复制
相关文章

相似问题

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