¿Cómo imprimo el valor completo de una cadena larga en gdb?

Resuelto John Carter asked hace 16 años • 6 respuestas

Quiero imprimir la longitud completa de una cadena C en GDB. De forma predeterminada, se abrevia, ¿cómo fuerzo a GDB a imprimir la cadena completa?

John Carter avatar Oct 24 '08 19:10 John Carter
Aceptado
set print elements 0

Del manual del BGF :

set print elements number-of-elements
Establezca un límite sobre cuántos elementos de una matriz GDB se imprimirán. Si GDB está imprimiendo una matriz grande, deja de imprimir después de haber impreso la cantidad de elementos establecidos por el set print elementscomando. Este límite también se aplica a la visualización de cadenas. Cuando se inicia GDB, este límite se establece en 200. Establecer el número de elementos en cero significa que la impresión es ilimitada .
John Carter avatar Oct 24 '2008 12:10 John Carter

Siempre que su programa esté en buen estado, también puede call (void)puts(your_string)imprimirlo en la salida estándar. De hecho, el mismo principio se aplica a todas las funciones disponibles para el depurador.

 avatar Oct 31 '2008 10:10

El printfcomando imprimirá las cadenas completas:

(gdb) printf "%s\n", string
korry avatar Dec 03 '2015 20:12 korry