WinDbgのデフォルトでは、intは10進数で表示され、unsignedintは16進数で表示されるようです。すべてを10進数で表示する方法はありますか?
ここに記載されn
ているコマンドを使用してみました
ただし、構文エラーが発生します。
:086> n[10]
^ Syntax error in 'n[10]'
私が間違っていることは何ですか?
使用すべきでないときに角かっこを使用しているようです。MSDNページでは、基数引数がオプションであることを示すために、これらの角かっこがあります。
引数を省略した場合、現在の基数が表示されます。
0:000> n
base is 10
引数(角かっこなし)を指定すると、現在の基数が変更され、エコーバックされます。
0:000> n 16
base is 16
基数が設定された後に一般的に使用されるトリックは、?
(式の評価)コマンドを使用して数値を新しい基数(この例では基数16)に変換することです。
0:000> ? 0n10
Evaluate expression: 10 = 0000000a
0:000> ? 0y11
Evaluate expression: 11 = 00000003
16進数(基数16)から10進数に戻すには:
0:000> ? a
Evaluate expression: 10 = 0000000a
ベースが設定されると、入力と出力の両方が影響を受けることに注意してください。つまり、現在のベースではない数値を入力する場合は、最後の例で上で行ったようにベースを指定する必要があります。MASMのような構文で数値がどのように処理されるかについての詳細は、こちらをご覧ください。
しかし、元の質問に戻ります...
はい、n 10
数値を10進数で表示するのに十分なはずです。何らかの理由で問題が発生した場合は、いつでも?
上記のコマンドを使用して変換を実行できます。
WinDbgが式を評価する方法(nコマンドの影響の詳細を含む)を説明する拡張記事は、次の場所にあります。
次のコマンドを使用してみてください:-
.enable_long_status 0