2

特定のソース ファイルの関数プロトタイプのみを表示するツールはありますか? Doxygenがそのようなことをしていることは知っていますが、私が見つけたのは次のような単純なLinuxコマンドです

$ filter-function-prototypes main.c
1: print_hello()
2: main()

ここで、main.c は次のように指定されます

#include <stdio.h>
void print_hello() {
    printf("hello, world\n");
}

int main()
{
    print_hello();
}
4

2 に答える 2

4

どうやらctagsそれができます!

ctags -x --c-kinds=f main.c

出力には余分なものがありますが、sedまたはで処理できますawk。またはcut

ctags -x --c-kinds=f cards.c | cut -c 51-
于 2013-04-05T11:11:31.207 に答える
1

多くの C ファイルは、トップレベルの定義が 1 列目から始まり、関数宣言行に少なくとも開き括弧がある、あなたと同じようにフォーマットされています。

したがって、これを使用できます:

egrep -i '^[a-z].*\(' main.c

あなたのフィルターとして。

于 2013-04-05T11:01:53.917 に答える