[问题] 请问有什么软件可以画出function flow的?

楼主: smilekerker (科科:))   2015-01-09 08:02:43
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Linux
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
请问有什么软件可以画出function flow(名称我也不太会取,可能是其他种)的?
喂入的资料(Input):
预期的正确结果(Expected Output):
错误结果(Wrong Output):
程式码(Code):(请善用置底文网页, 记得排版)
int a(){
int x;
x= b();
return x;
}
int b(){
int x;
x= c();
return x;
}
int c(){
int x=10;
return x;
}
int main(){
int x;
x= a();
return 0;
}
补充说明(Supplement):
像是上述程式码,一层一层呼叫进去再回来
有无软件可以将这样的流程(图)画出来呢?
或是用其他方式呈现之类的
要google苦无不太知道关键字是什么,找不太到
谢谢 :)
作者: cjcat2266 (CJ Cat)   2015-01-09 08:37:00
有些profiler可以呈现call stack不知道是不是你要的也可以在函式的scope里面自己插入视觉化逻辑
楼主: smilekerker (科科:))   2015-01-09 08:42:00
请问profiler是...? 可以多提供一点讯息,我试看看~嗯,因为要看是open source,不是自己写的,目前还没有能力自己修改程式码,只能找tool来帮助看code所以才想说有没有这类的软件可以帮忙画个图以助厘清
作者: christianSK (AG)   2015-01-09 09:15:00
callgrind?
作者: carylorrk (carylorrk)   2015-01-09 10:57:00
doxygen 或 clang?
作者: LiloHuang (十年一刻)   2015-01-09 11:03:00
花钱买个好工具也许是一个方法 http://goo.gl/pygzRrUnderstand 有提供各种平台的版本,包含 Linux x86/x64
作者: PoorLoser (废文制造机)   2015-01-09 11:11:00
Edraw Mind Map 免费版的功能已够用
作者: carylorrk (carylorrk)   2015-01-09 11:23:00
如果有些需要 runtime 才知道的(ex:function pointer)才需要用到 profiler...还可以画 edge probability XD有些 static analyzer 可以算出来,但是特定情况的indirect call 还是需要 runtime 跑跑看XD
作者: Killercat (杀人猫™)   2015-01-09 17:44:00
你想说的是Sequence Diagram吧....某些付费软件如Enterprise Architect有从runtime parse出sequence diagram(逆向工程)的方法 不过已C/C++来讲这应该都不会是免费的... Java比较有机会找到免费的
作者: carylorrk (carylorrk)   2015-01-09 18:19:00
perf 我记得也可以画出(文字版的)call graph...
作者: Killercat (杀人猫™)   2015-01-09 18:29:00
自画的话一堆免费软件都能做到倒是真的... XD要逆向工程runtime帮你分析画出来的话就比较.....
作者: tubbysong (song)   2015-01-09 18:36:00
Source Insight
作者: carylorrk (carylorrk)   2015-01-09 18:36:00
perf 的 call graph 是 runtime 的 call stack 啊XD
作者: tubbysong (song)   2015-01-09 18:37:00
Source Insight 菜吧看码神器
作者: carylorrk (carylorrk)   2015-01-09 18:37:00
而且至少树状图看起来还 OK 啦~
作者: michael0728n (蒜˙远古)   2015-01-09 18:57:00
Astah? 不过让它帮画好像要钱Source Insight可以画图吗?!
作者: elysium5290 (他塌塌塌塌)   2015-01-17 08:41:00
linux的gprofile?

Links booklink

Contact Us: admin [ a t ] ucptt.com