gdb

 

当程序出现 “段错误 (核心已转储)” 的错误时,这通常意味着你的程序访问了无效的内存地址,导致程序崩溃。

你可以使用 gdb 调试器来查找在程序的哪一行代码导致了这个错误。下面是使用 gdb 调试器查找错误的一般步骤:

  在编译你的程序时,使用 -g 选项生成调试信息。这样 gdb 就能够找到程序中的源代码和行号,如:

    $(CC)  $(SRCS)  $(CFLAGS) $(LDFLAGS) -g

 

使用 gdb 运行你的程序。你可以在命令行中输入以下命令来运行程序:

  gdb <程序名>

 

命令说明 

  r        使用 run 命令运行你的程序。你可以在 gdb 的命令提示符下输入以下命令来运行程序

  next       单步调试。你可以在 gdb 的命令提示符下输入以下命令来单步调试

  bt           当程序崩溃时,gdb 会提示你 “段错误 (核心已转储)”。你可以使用 bt 命令查看调用堆栈 

  list          查看源代码。你可以在 gdb 的命令提示符下输入以下命令来查看源代码  

  up        查看上一个函数的源代码,使用 down 命令查看下一个函数的源代码

  down        查看下一个函数的源代码

  where       查看当前行号。你可以在 gdb 的命令提示符下输入以下命令来查看当前行号  

  print <变量名>       查看变量的值。你可以在 gdb 的命令提示符下输入以下命令来查看变量的值  

  watch <表达式>     设置断点。你可以在 gdb 的命令提示符下输入以下命令来设置断点  

 

 

  

  

 

posted @ 2023-06-11 18:12  迷人的危险~  阅读(37)  评论(0编辑  收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css