我在Ubuntu虚拟机中运行gdb并且无法在没有破坏的情况下运行gdb。关于第三个n
下一个命令后,一切都变得混乱。有没有办法真正使用gdb?我应该只使用printf
进行调试吗?专业人士如何调试?
从命令行:
make
gdb
在main.c
:
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
static void Greet(uint16_t num_times) {
size_t i;
for (i = 0; i < num_times; i++) {
printf("Hello, World!\n");
}
}
int main(int argc, char* argv[]) {
Greet(atoi(argv[1]));
return 0;
}
在makefile
:
CC=gcc
CFLAGS=-Wall -ggdb
main: main.o
clean:
rm -f main main.o
在.gdbinit
:
file ./main
set args 3
# Breakpoints
break main
# Put source on top
layout src
run