我在gdb中打印一个字符串(char*)
(gdb) p l
l=0x9aa1f48 "up2 129104596496602200 19 0 0 3 0 eth1 XX :001CB",'0' <repeats 12 times>, "DC"
Run Code Online (Sandbox Code Playgroud)
是否有设置p打印整个字符串,而不是填写"重复......".在它的同时 - 也扩展了字符串的默认可打印长度,p如果字符串很长,似乎会切断.
ken*_*ytm 14
set print repeats 0
Run Code Online (Sandbox Code Playgroud)
例:
(gdb) p "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
$6 = 'a' <repeats 30 times>
(gdb) set print repeats 0
(gdb) p "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
$7 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
(gdb) set print repeats 10
(gdb) p "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
$8 = 'a' <repeats 30 times>
Run Code Online (Sandbox Code Playgroud)
像这样使用gdb的printf命令:
(gdb) printf "%s\n", a
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Run Code Online (Sandbox Code Playgroud)
代替
(gdb) p a
$1 = 'a' <repeats 32 times>
Run Code Online (Sandbox Code Playgroud)