有谁知道一个脚本可以获取一个列表,该列表能够告诉我 C 项目最常调用的函数?
方法1 391
方法2 23
方法3 12
更好的是可以自定义以在方法名称“get”中要求关键字。
我尽量不重新发明轮子,而是自己编写一个简单的脚本来完成。使用 grep 或 awk 可能是一种简单的方法。我可以编写正则表达式来匹配函数调用名称。 Eclipse 插件将是理想的选择。
我不是在寻找分析器。我想要这种方法的原因是我需要为嵌入式项目优化程序空间。我倾向于用 getter 封装我的成员变量,但可能需要使用 extern 并直接访问最常用的成员以减少空间。
最佳答案
一种方法是运行 Doxygen在源基地。您需要将其配置为提取所有函数和类,除非您已经在使用 Doxygen,因为默认情况下它会忽略未记录的实体。
如果您还有 AT&T GraphViz安装后,您可以获得为每个函数绘制的漂亮的调用图和调用图。但我认为没有一个表格可以按调用次数对此进行总结。
但是,有几种非文档输出格式可供选择,包括 Perl 模块和 XML。应该可以解析其中一个来开发您想要的列表,而且解析该信息几乎肯定比拼凑足够多的 C++ 前端以通过蛮力获得正确答案要容易得多。
还有一个 GCC 的 XML 后端 float 在某个地方,它基本上转储了 XML 中的语法树......我最近被它绊倒了,但不记得具体在哪里。
关于c - 创建 : <Method Name> <Num of times called> for a particular project directory list 的脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/891718/