用 Graphviz+pvtrace 可视化函数调用】的更多相关文章

最近在想怎么把一个程序的函数调用关系快速的用流程图的方式画出来,之后看到了这个一篇文章“用 Graphviz 可视化函数调用”(http://www.ibm.com/developerworks/cn/linux/l-graphvis/)感觉不错,详细的原理请看原文章,这里只把我的实验过程记录下,以备自己以后的不时之需. 1.要有代码,随便写个小程序,如下所示. #cat test.c #include <stdio.h> #include <string.h> void haha…
http://www.ibm.com/developerworks/cn/linux/l-graphvis/…
前言 之前的工作环境习惯了使用source insight查看函数分析代码,切换到mac下后改用vscode,发现缺少函数调用关系图生成.跨平台的understand可以很好的解决,但是公司没有购买,因此需要寻找一个免费.跨平台的替代工具.doxygen + graphviz是不错的选择. 原文参考:https://blog.csdn.net/benkaoya/article/details/79763668 1 介绍 doxygen 是跨平台的工具,官网:http://www.doxygen.…
参考文章: http://www.fmddlmyy.cn/text21.html http://www.cnblogs.com/duguguiyu/archive/2008/06/29/1231852.html  ---入门介绍 https://www.ibm.com/developerworks/cn/aix/library/au-aix-graphviz/index.html 1 Doxygen简介 1.1 What to do? 使用Doxygen生成文档,主要是两件事: 写一个配置文件(…
doxygen是一款生成开源代码说明文件的工具,因为不需要编译源码,用作代码的分析也十分方便. 一.安装 sudo apt-get install graphviz sudo apt-get install doxygen-guiubuntu - Generate graphs and diagrams with Doxygen - Stack Overflow 二.使用 示例:简单的代码调用关系的分析 代码见用 Graphviz+pvtrace 可视化函数调用 - fengbohello -…
GO是一个同源蛋白的数据库,按照三大类别BP(生物学过程), MF(分子功能), CC(细胞组分) 对基因的产物-蛋白质进行了分类: 在GO数据库中,本质上是一个有向无环图的数据结构,在三大类别之下,又有小的分类层级,一层一层的分类下去: 对于某个具体的GO号来说,代表了一组同源蛋白,拥有相似的结构和功能,在数据库中,有上层分类的GO,也可能在这个GO下面,还有其他的GO 为了直观的展示某个GO号的分类,利用数据库提供的go-basic.obo 文件得到不同GO之间的层级关系,然后用Graphv…
绘制函数调用关系图对理解大型程序大有帮助.我想大家都有过一边读源码(并在头脑中维护一个调用栈),一边在纸上画函数调用关系,然后整理成图的经历.如果运气好一点,借助调试器的单步跟踪功能和call stack窗口,能节约一些脑力.不过如果要分析的是脚本语言的代码,那多半只好老老实实用第一种方法了.如果在读代码之前,手边就有一份调用图,岂不妙哉?下面举出我知道的几种免费的分析C/C++函数调用关系的工具. 函数调用关系图(call graph)是图(graph),而且是有向图,多半还是无环图(无圈图)…
说来真是惭愧呀.一直在用VIM 做开发.却不知道VI 里还有这么好使的工具.以前一直都是用: find -type f -print | xargs grep -i **** 在源代码里查找. 原来Linux下也有类似于Souce Insight工具.以下是引用人家的文章.http://blog.chinaunix.net/u1/56619/showart_1822993.html linux源代码分析和阅读工具比较 Windows下的源码阅读工具Souce Insight 凭 借着其易用性和多…
Shell的字符串处理   1 得到长度   %x="abcd"  #方法一      %expr length $x      4  # 方法二      %echo ${#x}      4  # 方法三      %expr "$x" : ".*"      4  # expr 的帮助  # STRING : REGEXP   anchored pattern match of REGEXP in STRING 2 查找子串     %ex…
Windows下的源码阅读工具Souce Insight凭借着其易用性和多种编程语言的支持,无疑是这个领域的“带头大哥”.Linux/UNIX环境下呢?似乎仍然是处于百花齐放,各有千秋的春秋战国时代,实际上,似乎其环境下的任何软件都是处于一种逐鹿中原的态势,也许这就是“集市”之于“大教堂”的优势所在吧! 主要的交叉索引工具有:ctags.cscope.global.lxr.KScope.sourcenav.calltree.CodeViz.ncc.gprof等.下面将就各软件的优劣作一简单介绍.…