いくつかのヘッダーを含む 4 ~ 5 個の .c ファイル (それぞれ約 2000 ~ 5000 行) を使用しています。現在、実行中にプログラムをデバッグするのに役立つデバッグ プリントはありません。
私の質問は次のとおりです:- .c ファイルを解析し、.c ファイルの現在のスコープ内のすべての変数に対して新しい印刷ステートメントのセットを追加する方法 (または既存のツール) はありますか? VC++ と同じように、ローカルやグローバルなどを表示できます。各ステップでそれらを出力する必要があります。また、ポインターは逆参照する必要があります。
たとえば。.c ファイルのある時点で、10 個のグローバル変数と 3 個のローカル変数があるとしましょう。その時点でこれらの 13 個の変数を出力するには、スマート printfs を生成する必要があります。プログラムの後半で20個の変数がある場合、20個の変数などを出力できるはずです。含まれているヘッダーファイルには、これらの
変数のそれぞれに関連するすべての宣言が含まれています(構造/ポインター/配列またはいくつかの組み合わせなどである可能性があります. ) 私は perl スクリプトでこれを達成しようとしていました。
私がしたことは、前処理されたファイル (.i ファイル) を生成し、それを perl で解析してから、各変数に固有の個々の印刷関数を生成しようとしたことですが、半日の努力の後、時間がかかりすぎることに気付きました。すでにそれを行うツールはありますか? これではない場合は、それに近いもので十分です(perl処理などを適用できます)私の目標は、プログラムの実行後、プログラム実行中の各ステップで、変数(有効なそのスコープで) デバッガーを呼び出す必要はありません。
.c ファイルを処理して、もう一度書き直すことは許可されています。私の質問が明確であることを願っています。返信ありがとうございます。