- 締切済み
Cプログラムの解析(関数の呼び出し関係など)
仕事で必要なため、C言語の勉強をしています。 既存のプログラムに変更を加えるのために、膨大な量のソースコードを ながめて関係を把握しようとしているのですが、効率のよいやり方が わかりません。 バグのない盛り込みをするために、関数の呼び出し関係などを検索して 調べEXCELに書き出したりなどしているのですが、限界を感じています。 ツールをいくつか試用してみたのですが、どうもしっくりくるものが ありません。 例えば、 func_a() -> func_b() -> func_c() -> func_d() という関係 になっているものがあったとして、func_a() -> func_b()や func_b() -> func_c()の関係は表示できても、 func_a() -> func_b() -> func_c() の関係は一度に表示できず、 自分の頭の中で組み合わせて覚えておかなければならないなど.. みなさんは、ソースコードを解析し、その結果を把握して変更を加える際、 どうされているのでしょうか? アドバイスよろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- hpsk
- ベストアンサー率40% (48/119)
私は、cflowというツールを使っています。 実行オプションで解析する呼び出し階層数を指定することができます。
- driverII
- ベストアンサー率27% (248/913)
ある会社では、表示用のプログラムを作ってましたね。 ツリー型で全てを一度に表示できるものです。 Cでは、言語解析がしやすいので、作ろうと思えばすぐ できるでしょう。 良い開発環境を使えば、いらないようにも感じますが・・・・ ちなみに Windows環境,UNIX(LINUX)環境のどちらなんでしょうね。
- jacta
- ベストアンサー率26% (845/3158)
私はDoxygenをよく使っています。それ以外はgrepでどうにかなります。
- 参考URL:
- http://www.doxygen.org/