Red de conocimiento informático - Aprendizaje de programación - ¿La depuración de GDB debe ser gdb a.out? ¿Qué debo hacer si hay un error en el programa y no se puede generar a.out y quiero utilizar la depuración de gdb para encontrar el error?

¿La depuración de GDB debe ser gdb a.out? ¿Qué debo hacer si hay un error en el programa y no se puede generar a.out y quiero utilizar la depuración de gdb para encontrar el error?

No existe el concepto de sufijo en el sistema Unix. Los archivos ejecutables a y a.out son iguales.

Depuración de GDB:

1.gdb a.out a la consola de gdb

2. Establezca args [arg_list] (establezca parámetros, es decir, main( int argc, cadena argv en char **argv), no es necesario configurar esto)

3 Establecer punto de interrupción<

1):b Nombre de archivo: número de línea, como por ejemplo: b test.c:20

2):b nombre de la función, como: b main

3):Ver información del punto de interrupción b

4. programa r O ejecutar

5. Depuración de un solo paso s/paso (en caso de que se ingrese la función)

6. en el caso de que no se ingrese la función) case) El valor predeterminado es un paso

7. Muestra el valor de la variable p [nombre de la variable]

8. filas en la parte superior de la pila] El valor predeterminado es 5 filas

9. Salir de la consola GDB

10. Salir de la consola GDB

. . . . .

La depuración más sencilla son estos pasos

Hay mucha información sobre la depuración de GDB en Internet, puedes buscarla.

Además, si quieres aprender a programar en UNIX/LINUX, te recomiendo un libro introductorio muy práctico "Unix/Linux Programming Practical Tutorial", Tsinghua University Press, escrito por Bruce Morey, traducido por Yang Zongyuan y Huang Haitao. Muy clásico. Siempre que tengas conocimientos básicos del lenguaje C, podrás aprenderlo. Y puede obtener una comprensión preliminar de los sistemas Unix/Linux y compilar pequeños programas prácticos.