如何使GDB打印64位变量?

如何使GDB打印64位变量?,gdb,64-bit,Gdb,64 Bit,我正在使用GDB调试用 nasm-felf64-Fdwarf 当我想检查标签符号处的值时,比如 var\u h:dq-1 使用 打印变量 GDB假定该值是32位的,只给出最低的4个字节 x\1gx$var\u h 沿“无法将值转换为整数”行给出错误 非常感谢您的建议!这应该可以: (gdb) x/gx &var_h 你的其他命令,以及“沿着……的路线”毫无意义 细节很重要,您应该始终显示您使用的实际命令和收到的输出,而不是模糊的近似值。gdb手册第200页列出了作为运算符的前缀-&但这

我正在使用GDB调试用

nasm-felf64-Fdwarf

当我想检查标签符号处的值时,比如

var\u h:dq-1

使用

打印变量

GDB假定该值是32位的,只给出最低的4个字节

x\1gx$var\u h

沿“无法将值转换为整数”行给出错误

非常感谢您的建议!

这应该可以:

(gdb) x/gx &var_h
你的其他命令,以及“沿着……的路线”毫无意义


细节很重要,您应该始终显示您使用的实际命令和收到的输出,而不是模糊的近似值。

gdb手册第200页列出了作为运算符的前缀-&但这是唯一的参考。否则将永远找不到它。非常感谢,并注意到注释。@Anding:gdb表达式主要用于类似于C语法(而不是汇编),因此将隐式取消引用裸符号名称,以获取该符号地址处的值。