VC6 ウォッチ ウィンドウで変数の完全な文字列値を取得するにはどうすればよいですか?
質問
VC6 ウォッチ ウィンドウで char[] 変数の完全な値を取得したいのですが、切り詰められたバージョンしか表示されません。デバッグ メモリ ウィンドウから値をコピーできますが、そこには 16 進値と文字列値が混在した行が含まれています。確かにもっと良い方法がありますか?
解決
大きな文字列の場合、ほとんどメモリ ウィンドウに行き詰まってしまい、最終的にはツールチップが切り詰められてしまいます。
幸いなことに、メモリ ウィンドウはデータを取得するのが簡単です。私は管理しやすいように 8 バイトのチャンクで表示することが多く、文字列データを見つけて空のウィンドウにロットをカットアンドペーストし、Alt キーを押しながらドラッグして列を選択し、 16 進値を削除します。次に、文字列の最後から開始して、継続的にページアップ/削除 (改行) を行って文字列を構築します (この部分にはマクロを使用します)。
長い文字列を取得した場合、これより良い方法はないと思います。
他のヒント
押して押して時計に入れることができます
与えられた
char bigArray[1000];
時計:
&bigArray[0]
&bigArray[100]
&bigArray[200]
...
または、文字列内の検索したい場所のインデックスを変更します...
不格好ですが、以前はうまくいきました。
VC6 はもう持っていないので試すことができません。うまくいくかどうかはわかりませんが、入力できるかもしれません
(char*)textArray;
時計窓の中。
より良い解決策かもしれません:VS2008 は、希望どおりにテキストを自動的に表示します。また、VS2008 には変更なしの Express Edition があり、私の知る限り、商用アプリケーションの開発に使用できます。VC6 で開発を継続し、デバッグのみに VS2008 を使用することもできます。VS2003ではそれが可能でした。約 5 年前、私は VC6 で開発されたアプリをメンテナンスする必要がありました。開発には VC6 を使い続けましたが、デバッグには VS2003 を使用しました。
私が見た唯一のテクニックは、文字列を見ることであり、文字列 + 50、 + 100などを見ることです。
ユージン・イヴァヒフはこう書いた 加える msvc 6 では、編集ボックスに完全な文字列を表示できます。
VC6 用のかわいいプラグインがあります。 Xデバッグ. 。さまざまな種類の文字列を表示するためのダイアログが追加されます。私にとってはとてもうまくいきました。
おそらく、ログファイルの作成に慣れて、出力をファイルに直接書き込んでから、お気に入りのテキスト エディタを起動してください。