0

.c ファイルを渡すことができ、たとえば "if" ステートメントの表示数をカウントするライブラリはありますか?

現在のファイルによって呼び出される他のファイルの "if" ステートメントを気にする必要はありません。現在のファイルのカウントだけです。

簡単なgrepまたは正規表現を実行できますが、もっと良いものがあるかどうかを確認したかったのですが(それでも簡単です)

4

3 に答える 3

2

それが正しく行われたことを確認したい場合は、おそらくclangを利用してastを歩きます。開始するための URL:

http://clang.llvm.org/docs/IntroductionToTheClangAST.html

于 2013-05-10T20:11:07.707 に答える
-1

これまでのところ、誰もが言っていることは正しいです。ファイルからたわごとをgrepする方がずっと簡単に思えます。これによるパフォーマンスへの影響は、gcc ソース コード (または使用しているコンパイラ) を取得し、解析コードを調べて、構文解析中に実行したいことをフックする代替手段と比較して無視できます。木。これは面倒なことのように思えます。特に、条件ステートメントだけを心配している場合はなおさらです。実際に分岐が気になる場合は、実際にはオブジェクト コードを見て、アセンブリ内の if ステートメントの数を数えることができます。これにより、(入力した回数だけに頼るのではなく) 分岐の数が正しくわかります。プログラムの分岐に正確に変換されない条件付き)。

于 2013-05-10T19:12:49.333 に答える