341*_*008 13 c linux gdb pointers
当使用GDB单步执行程序时,如何检查指针指向的字符串?
我可以看到指针指向0x82c6e10.我知道这是一个字符串.我该如何打印?
0x82c6e10
使用printf("%s\n", 0x82c6e10)给出Bad format string, missing '"'.gdb不抱怨未知命令的事实告诉我解决方案是我正在做的事情的一些变化.我对吗?我试图逃避报价,但这没有帮助.
printf("%s\n", 0x82c6e10)
Bad format string, missing '"'.
Pau*_*l R 18
使用x而不是p:
x
p
x /s 0x82c6e10
wno*_*ise 15
这printf不是一个函数,而是一个gdb命令.省略括号.
printf
gdb
更好的是,只需使用print命令或x带格式的命令/s
print
/s
(你实际上可以printf()用call命令调用C函数.)`
printf()
call
gdb该help命令提供了大量的帮助.试试吧.
help
Jac*_*zny 14
尝试:
print (char *)pointer
归档时间:
14 年,9 月 前
查看次数:
24590 次
最近记录:
7 年,5 月 前