如何确保浙江建设工程合同备案网站在苏宁易购的稳定运行和有效维护?
摘要:浙江建设工程合同备案网站,苏宁易购如何进行网站的建设和维护,做搜狗手机网站点,徐州集团网站建设公司目录 1. 使用 gdb 的前置工作 2. 如何使用 gdb 进行调试 1、如何看到我的代码 2、如何打断点3、怎么运行程序 4、如何进行
浙江建设工程合同备案网站,苏宁易购如何进行网站的建设和维护,做搜狗手机网站点,徐州集团网站建设公司目录
1. 使用 gdb 的前置工作
2. 如何使用 gdb 进行调试
1、如何看到我的代码
2、如何打断点
3、怎么运行程序
4、如何进行逐过程调试
5、如何进行逐语句调试
6、如何监视变量值
7、如何跳到指定位置
8、运行完一个函数
9、怎么跳到下一个断点
10、如何禁用/开启…目录
1. 使用 gdb 的前置工作
2. 如何使用 gdb 进行调试
1、如何看到我的代码
2、如何打断点
3、怎么运行程序
4、如何进行逐过程调试
5、如何进行逐语句调试
6、如何监视变量值
7、如何跳到指定位置
8、运行完一个函数
9、怎么跳到下一个断点
10、如何禁用/开启断点
3、小总结
写在最后 1. 使用 gdb 的前置工作
我们先简单写一些程序 就是一个普通的打印程序然后
使用 Makefile 来自动化构建我们的项目 这样直接 make 编译之后
我们输入 gdb test 就能进行调试了 但是他这里提示我们这个可执行程序没有调试信息
输入 quit 退出 gdb 调试。为什么会没有调试信息呢
因为 Linux 环境下默认发行的是 release 版本。
我们需要在编译的时候添加上 -g 选项来增加调试信息到可执行程序里面 现在完成了我们再次使用 gdb test 进入调试状态 发现了没我们成功了现在就可以开始调试了。
2. 如何使用 gdb 进行调试
我们先写一份简单的代码就是用于测试调试的根据自己喜好写就行了 我们加入调试信息运行之后使用 gdb。 1、如何看到我的代码
输入 l 数字就是从第几行开始看不过一般不会全部显示出来
l 源文件名字可以指定该文件 只要我们再输入回车他就会继续给我们输出 2、如何打断点
我们可以使用 b 行号来进行打断点
也可以 b 函数名b mycode.c:10 指定文件行号 那我们怎么查看断点有没有真的打上去了呢
可以输入 info b 来进行查看 这样就看到了Num 表示的是断点的编号。
那怎么删除断点呢
输入 d 断点编号就可以删除这个断点 3、怎么运行程序
当你打好了断点你得把程序运行起来才能调试那怎么运行呢
输入 r 即可 现在到了我们的设置在 15 行的断点
4、如何进行逐过程调试
输入 n 可以进行逐过程调试不进入函数 这里要注意如果函数里面有断点就算用逐语句gdb 也会停在里面
所以这里先把在函数里的断点删掉然后在继续 n 我们可以看到遇到函数就直接当做一个语句来运行了。
5、如何进行逐语句调试
输入 s 就能进行注语句调试 我们可以看到他进入了这个 add 函数里面。 6、如何监视变量值
使用 p 变量名 即可 但是这样就输入的时候才能看一眼能一直显示出来吗可以
输入 display 变量名 即可 这样我们继续调试的时候他就能出现在旁边了
再使用 undisplay 就能取消观察了。
7、如何跳到指定位置
这个时候我们陷入了这个循环中怎么样才能跳出来呢
输入 until 行号 就能跳到指定的行 可以看到我们跳出了循环来到了第 9 行。
8、运行完一个函数
当我们不想再在这个函数里面的时候
输入 finish 就能直接运行完当前在的函数 他还很贴心的把返回值告诉了我们。
9、怎么跳到下一个断点
输入 c 即可 我们就成功从 15 行到了我们 21 行的这个断点的地方
10、如何禁用/开启断点
使用 disable 断点编号即可禁用断点 使用 enable 断点编号即可开启断点 3、小总结
这里我把我觉得常用的都总结到一起了可以用来快速的复习
l列出代码
r运行代码
c继续运行
finish结束当前函数
p 变量打印变量的值
b 行号打断点
info查看断点
d 行号删除断点
disable/enable禁用断点/启用断点
display/undisplay监视一个变量的值/取消
until 行号走到该行
n逐过程执行
s逐语句执行会进函数
bt查看调用堆栈
写在最后
以上就是本篇文章的内容了感谢你的阅读。
如果感到有所收获的话可以给博主点一个赞哦。
如果文章内容有遗漏或者错误的地方欢迎私信博主或者在评论区指出~
