GDB便利变量

时间:2013-11-19 11:34:34

标签: c++ c debugging gdb

我有这样的功能

int xxxxxxxxxxxxxx_For_xxx(int val1, int val2, int val3, short int *FillVal)

这个FillVal应该将结果放在处理val1,val2和val3上。 所以,我在GDB上附上了这个过程,我做到了。

set $myvar=(int*)malloc(4)
call xxxxxxxxxxxxxx_For_xxx(1, 40, 0, $myvar)

通话时,返回值正确。因此,函数调用成功结束。 现在,如果我在gdb中打印$ myVar的值。

print *$myvar

我得到垃圾值。但是,在日志转储中,我可以看到放置了正确的值 在里面* FillVal。

为什么会这样?我在cygwin(intel)上尝试了一些示例程序,效果很好。 但是,当我在powerPC(linux)上尝试这个时。出现上述问题。

0 个答案:

没有答案