gdb又一问!watch i==50

gaoxianfeng 2003-05-06 04:38:34
程序中有个变量i

我需要当i == 50 的时候 程序停下来
在gdb时我输入watch i == 50
显示Watchpoint 2: i == 50
没问题
但当run

却出现了
Watchpoint 4 deleted because the program has left the block in
which its expression is valid.
0x4000a181 in _dl_runtime_resolve () from /lib/ld-linux.so.2

为什么? 大虾给个指教
...全文
69 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaoxianfeng 2003-05-13
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1746/1746913.xml
http://expert.csdn.net/Expert/topic/1762/1762382.xm

各位请帮到这两个贴子UP一下 谢谢了!
有分给

gaoxianfeng 2003-05-13
  • 打赏
  • 举报
回复
GZ
gaoxianfeng 2003-05-12
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1746/1746913.xml
http://expert.csdn.net/Expert/topic/1762/1762382.xm

各位请帮到这两个贴子UP一下 谢谢了!
有分给



bnwxf 2003-05-10
  • 打赏
  • 举报
回复
www.gnu.org去下一份gdb文档吧,html格式的,很全面
gaoxianfeng 2003-05-10
  • 打赏
  • 举报
回复
又有问题了

怎么才能知道目前运行到那一行了?

谢谢各位
上面的一个问题,各位可能忽略了

求教!
gaoxianfeng 2003-05-10
  • 打赏
  • 举报
回复
:)
谢谢你
很感激 能多几个你这样的朋友太好了!
bnwxf 2003-05-09
  • 打赏
  • 举报
回复
我也不知道了,帮你up一下。
gaoxianfeng 2003-05-09
  • 打赏
  • 举报
回复
_dl_runtime_resolve () from /lib/ld-linux.so.2
断点设到哪里了?

如for(...i...)
printf(...i...);
我设到for()
和设到printf()
都是__libc_start_main()
在啊。
gaoxianfeng 2003-05-07
  • 打赏
  • 举报
回复
to bnwxf:
应该不会 我在main()里面for(i=0;i<1000;i++)
应该不会吧。

你提的方法我试试看
谢谢你
bnwxf 2003-05-07
  • 打赏
  • 举报
回复
_dl_runtime_resolve () from /lib/ld-linux.so.2
这个时候,程序还未执行到/或已经执行完成了main函数,上面这个应该是启动代码的一部分,所以main里面的局部变量在当前上下文中不存在。
gaoxianfeng 2003-05-07
  • 打赏
  • 举报
回复
又有问题了

怎么才能知道目前运行到那一行了?

谢谢各位
gaoxianfeng 2003-05-07
  • 打赏
  • 举报
回复

变成全局变量可以了

为什么?!
bnwxf 2003-05-06
  • 打赏
  • 举报
回复
超出变量的作用域了。
在程序运行的过程中,你指定的条件没有满足,然后就超出作用域了。
如果一定要试,建议把i改成全据变量。
实际上这个功能还是很有用的,尤其是在接手别人代码的时候 -- 个人感觉。
gaoxianfeng 2003-05-06
  • 打赏
  • 举报
回复
用了
想试试看这个
yzssg 2003-05-06
  • 打赏
  • 举报
回复
为什么不用条件断点呢

23,117

社区成员

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

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