【发布时间】:2010-11-11 18:12:19
【问题描述】:
我正在进行一项关于extremely long and complicated functions in the Linux kernel 的小型学术研究。我试图弄清楚是否有充分的理由编写 600 或 800 行长的函数。
为此,我想找到一个可以从 .c 文件中提取函数的工具,这样我就可以对该函数进行一些自动化测试。
例如,如果我在文件 connect.c 中有函数 cifs_parse_mount_options(),我正在寻找一个大致如下的解决方案:
extract /fs/cifs/connect.c cifs_parse_mount_options
并返回函数的 523 行代码(!),从左大括号到右大括号。
当然,任何操纵现有软件包(如 gcc)的方式来做到这一点也是最有帮助的。
谢谢,
乌迪
编辑:Regex to pull out C function prototype declarations? 的答案让我确信,通过正则表达式匹配函数声明绝非易事。
【问题讨论】:
标签: c regex text-processing code-metrics mcc