看起来WinDbg的默认值是以十六进制显示十进制和无符号整数的整数。 有没有办法用十进制显示全部?
我尝试使用n
命令mentioned here
它虽然给我语法错误:
:086> n[10]
^ Syntax error in 'n[10]'
知道我做错了什么吗?
答案 0 :(得分:5)
你不应该使用方括号。在MSDN page上,这些方括号表示radix参数是可选的。
当参数保持关闭时,会显示当前基数。
0:000> n
base is 10
当您提供参数(没有方括号)时,当前基数会发生变化并回显给您。
0:000> n 16
base is 16
设置基数后常用的技巧是使用?
(Evaluate Expression)命令将数字转换为新基数(在本例中为基数16)。
0:000> ? 0n10
Evaluate expression: 10 = 0000000a
0:000> ? 0y11
Evaluate expression: 11 = 00000003
请记住,一旦设置了基数,输入和输出都会受到影响,这意味着当您要输入的数字不是当前基数时,您需要在最后一个示例中指定基数。 。有关如何使用类似MASM的语法处理数字的进一步阅读here。
但回到原来的问题......
是的,n 10
应该足以强制数字以十进制显示。如果由于某种原因出现问题,您可以始终使用上面显示的?
命令执行转换。
答案 1 :(得分:2)
描述WinDbg如何评估表达式的扩展文章(包括有关n命令影响的详细信息):
答案 2 :(得分:0)
尝试使用命令: -
.enable_long_status 0