16

はい、私は4つのメモリウィンドウがあることを知っていますが、私はウォッチウィンドウで単一の値の表示を好むと、ウォッチウィンドウで見るメモリの場所を指定できるかどうかは疑問です。Visual Studioデバッガのウォッチウィンドウを使用してメモリ位置の値を見ることはできますか?

アドレス自体を入力するだけで、アドレスが16進数で評価されます。

答えて

24

特定のメモリ位置を見たい場合は、その場所に存在するオブジェクトの種類をデバッガに伝える必要があります。ただ0x00aabbccの代わりに(SomeType*)0x00aabbccを使用してください。デバッガがメモリ位置の型を知ったら、型付きローカルと同じように扱い、それに応じた値を表示します。

+0

私はVSはとてもスマートにしよう、とメモリの場所に何があるか確認するために知られているデータ型を必要としないでほしいです。 私はちょっとばかばかしいかもしれませんし、メモリの場所に16進数のダンプを表示するだけです:P –

+5

それはすでにメモリウィンドウがあります。そこに変数をドラッグ&ドロップする(または16進アドレスを貼り付ける)と、生のメモリ状態が表示されます。 – Neutrino

1

公式サイトanswerをチェックしてください。そのページで は、「メモリを介しポインタに続いて」セクションは言う:

ネイティブコードアプリケーションでは、あなたが生きて 式として名を登録し使用することができます。たとえば、スタックポインタを使用して スタックに従うことができます。

ポインタの式を入力し、メモリウィンドウアドレスボックスでメモリ

  1. を通じてポインタに従ってください。ポインタ変数は現在のスコープになければなりません。 言語によっては逆参照する必要があるかもしれません。

  2. プレスENTER。現在、ステップのような実行コマンドを使用すると、表示されるメモリアドレスはポインタが変わると自動的に変化します。

+0

"メモリウィンドウのアドレスボックスにポインタ式を入力してください。"正確にはポインタ式ですか?私は何も試みません。 – Dan

+0

ポインタ式は '*(int *)(ebp + 0ch)'のようになります.ebp + 0chをintへのポインタとして扱い、逆参照します。 – Yuval

関連する問題