¿Cómo imprimo el valor completo de una cadena larga en gdb?
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?
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 elements
comando. 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 .
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.
El printf
comando imprimirá las cadenas completas:
(gdb) printf "%s\n", string