如何获取C中文件中所有函数的范围(即行号)?

时间:2011-11-09 15:51:23

标签: c function ctags line-numbers

我想获得C中文件中所有函数的开头和结尾行号。是否有人知道Linux中是否有一个易于使用的工具用于此目的?

1 个答案:

答案 0 :(得分:5)

$ ctags -x --c-kinds=f filename.c

这只给出了每个函数的起始行,但也许这就足够了。

如果代码是使用相当常见的约定编写的,那么函数应该以第一列中包含}的单行结束,因此在第一行中给出最后一行是相当容易的:

awk 'NR > first && /^}$/ { print NR; exit }' first=$FIRST_LINE filename.c