0

我正在使用 gdb 宏进行调试。我正在调试的系统是 64 位英特尔处理器。正在调试的变量正在存储一个 64 位的值。

在宏中存储变量值时,值存储为 32 位。例如,以下仅从 int64temp 打印 32 位。

set $val = $int64temp

printf "value %d   \n",$val,

需要进行什么更改才能将变量设为 64 位以便 printf 给我 64 位值?注意:我确实通过运行设置弧 -

set architecture i386:x86-64
4

1 回答 1

1

printf "值 %d \n",$val

这会将 $val 打印为一个int(即使在 64 位模式下也是 32 位)。尝试

printf "value %ld\n", $val
于 2013-03-20T17:23:01.977 回答