gdb到底怎么用哦....

蓉城浮世 2007-04-25 10:30:58
-----------------
清单 一个有错误的 C 源程序 bugging.c
-----------------
#include <stdio.h>
#include <stdlib.h>

static char buff [256];
static char* string;
int main ()
{

printf ("Please input a string: ");
gets (string);

printf ("\nYour string is: %s\n", string);
}
-----------------
上面这个程序非常简单,其目的是接受用户的输入,然后将用户的输入打印出来。该程序使用了
一个未经过初始化的字符串地址 string,因此,编译并运行之后,将出现 Segment Fault 错误:
$ gcc -o bugging -g bugging.c
$ ./bugging
Please input a string: asfd
Segmentation fault (core dumped)
下面的调试步骤是按照书上说明的进行的哦 还是不行的
1.gdb bugging 装入 bugging 可执行文件;
2.run 执行装入的 bugging 命令;
3.where 查看程序出错的地方;
4.list 查看调用 gets 函数附近的代码;
5.print string 查看 string 的值;
6.break 11 第 11 行处设置断点;
7.start 程序重新运行到第 11 行处停止,这时,我们可以用 set variable 命令修改 string 的取值;(这一部不晓得怎么做)
8.continue 继续运行,将看到正确的程序运行结果



就是那个第七步到底怎么做哦...程序要求我输入string的时候,我输入了之后 程序就挂了 关了,我再set string "***" 就没用了呀...


还有这个怎么set哦,还有在什么时候set哦
...全文
838 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lif2000 2007-05-10
  • 打赏
  • 举报
回复
太长了 自己看吧!!!!!
http://blog.csdn.net/Lalphbet/archive/2005/02/25/301939.aspx
jaywee 2007-05-10
  • 打赏
  • 举报
回复
不知道哪位达人可以发份关于gdb的文档,我也正在发愁不会这个呢!
lk_517 2007-04-26
  • 打赏
  • 举报
回复
这样用gdb set?还不如修改源代码只用gdb看呢
fishlovecat 2007-04-25
  • 打赏
  • 举报
回复
收藏 正打算 用gdb呢
fishlovecat 2007-04-25
  • 打赏
  • 举报
回复
没有多少命令噢
gamedragon 2007-04-25
  • 打赏
  • 举报
回复
gdb bugging
进去之后有命令提示符,敲help就看到N多的选项。
蓉城浮世 2007-04-25
  • 打赏
  • 举报
回复
faint,我晓得程序是错误的 好不好?
我就是想用这个程序问下如何用gdb调试
wowh 2007-04-25
  • 打赏
  • 举报
回复
你只给个字符串指针 没分配空间
当然就段错误了啊

23,216

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧