2017-06-08 13 views
0

私は、t個の関数を持つc(java、C++)ファイルを持っています。何か方法はありますか、私は最小の番号で機能を見つけることができます。言葉のcファイルの中で最小の関数を見つける

与えられた関数では、yylex()を使用して関数内の単語の数を計算できます。

+0

どのようなプログラミング言語ですか? – Gnqz

+0

任意のプログラミング言語 - スクリプトランゲージ/ cまたはパーサーレクサーを使用する – Jab

答えて

0

ソリューションの実装に使用する言語を指定していないので、私が使用するアルゴリズムの説明を提案します。

ファイルを反復処理し、regexを使用して関数のプロトタイプ(C関数の場合は"^(\w+()?){2,}\([^[email protected]#$+%^]+?\)"など)を検出できます。関数を検出したら、次の行を繰り返して単語を数えます。別の関数定義を含む行を検出すると、その関数をワードカウントで保存し、ファイルの最後に到達するまで次の関数に移動します。

単語の数が最も少ない関数のみが必要と考える場合は、関数名の数が前の数よりも少ない場合に関数名を格納することができます。

関連する問題