Распечатайте целую строку дословно в gdb

Я печатаю строку (символ *) в gdb

(gdb) p l
l=0x9aa1f48 "up2 129104596496602200 19 0 0 3 0 eth1 XX :001CB",'0' <repeats 12 times>, "DC"

Есть ли установка, чтобы иметь p распечатайте целую строку и не гостиницу заливки "повторения...". В то время как в нем - также расширяют печатаемую длину по умолчанию строки, p кажется, убегает, если строка довольно длинна.

10
задан nos 12 February 2010 в 15:10
поделиться

3 ответа

set print repeats 0

Пример:

(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>
14
ответ дан 3 December 2019 в 18:33
поделиться

Попробуйте:

(gdb) x /s l
0
ответ дан 3 December 2019 в 18:33
поделиться

Используйте команду printf в gdb следующим образом:

(gdb) printf "%s\n", a
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

вместо

(gdb) p a  
$1 = 'a' <repeats 32 times>
7
ответ дан 3 December 2019 в 18:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: