本篇文章给大家谈谈linux怎么去掉断点,以及linux怎么打断点对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、linux 编程工具怎么断点调试
- 2、在c语言中怎样设置断点?
- 3、Linux中如何使用断点
- 4、od硬件断点怎么去掉
- 5、深度linux V20如何安装gdb,如何用gdb调试程序、用gdb设置断点删除断点、gdb自动显示变量值、看内存值?
- 6、linux入门基础(四)Gdb调试程序
1、linux 编程工具怎么断点调试
编译:gcc -o xxx xxx.c 调试:gcc -o xxx -g xxx.c gdb xxx run break line(行数)或函数名 info 查看断点 n 下一步 print +变量 打印变量值 q 退出调试 c 继续执行到下一个断点
2、在c语言中怎样设置断点?
不同的编译器设置断点的方法不一样,比如VC6.0:
点击最右边那个
手
的图标就是设置断点(快捷键F9),
然后点击右边第二个就是开始调试(快捷点F5)。
也可以在你想要设置断点的那一行右键,然后点击
手
的图标。
每种编译器的方法不一样,建议百度
“XXX(编译器类型)
调试方法”。
3、Linux中如何使用断点
终端输入man
gdb可查命令
断点设置是
b
n
(n
为续设断点行号)
其他命令如下
gdb
file
first
///载入程序
break
n
///设置断点,n为行号
run
///运行
x
///打印变量x
next
///执行下一句
stop
///停止
quit
///退出
如果要使用ide调试,建议用emacs,再cc-mode,ecb,Yasnippet和cedet
希望对你有帮助
4、od硬件断点怎么去掉
1:用OD打开软件,
2:点击选项——调试选项——异常,把里面的√全部去掉!CTRL+F2重载下程序,
3:一开是程序就是一个跳转,在这里我们按SHIFT+F9,直到程序运行,记下从开始按F9到程序运行的次数,
4:CTRL+F2重载程序,按SHIFT+F9(次数为程序运行的次数-1次 ,
5:在OD的右下角我们看见有一个SE 句柄,这时我们按CTRL+G,输入SE 句柄前的地址,
6:按F2下断点!然后按SHIFT+F9来到断点处,
7:去掉断点,按F8慢慢向下走,
8:到达程序的OEP,脱壳。
5、深度linux V20如何安装gdb,如何用gdb调试程序、用gdb设置断点删除断点、gdb自动显示变量值、看内存值?
因本人通过几个小时的时间才解决这个问题,希望我的答案能节省大部分初学者在gdb上的时间。我也是今天才接触gdb,以下是有关深度linux V20的gdb调试问题的初步总结:
安装gdb方式,sudo apt-get install gdb ,有ok点击ok安装,直到安装结束。
gcc -g aa.c之后才能调试a.out文件。(aa.c表示你的源文件)
用法gdb a.out或者gdb进入后file a.out
l N是查看N行附近的代码,直接l是显示接下去的代码。r运行过程中遇到断点,按l则显示断点附近代码。
l 函数名是查看函数名里边的代码
q退出调试。
p 变量,查看变量即时值。
r运行。
n单步执行。
s单步执行-进入函数。
c连续多步运行,直到下个断点(循环的下一次断点)暂停。
b N第N行设置断点。
b 函数名,在函数名的入口处设置断点。
b 文件名:行号,在指定文件名行号设置断点。其中文件名是源文件的文件名。
(条件断点)b 行号 if 变量==N,表示该行号的断点必须满足变量==N的条件下才停下来。
ignore 断点编号 N,表示该断点编号在接下来的运行过程中忽略N次,即第N+1次该断点才会停下来。
info break显示全部断点。简写i b
delete 1-3删除编号为1到3的断点。简写 d 1-3。d 4只删除编号为4的断点。
delete break删除所有断点。无法简写
clear 20删除20行断点。
运行中disable break n 禁用断点号为n的断点。enable break n 使能断点为n的断点号重新启用。其中break可以简写为b
display {var1,var2,var3}自动显示var1~3变量的值。要删除display则用delete display N,N表示display的编号,如果不加N则表示删除全部的display。如果要自动显示数组内容,用display 数组名。注意:display需要r之后才能设置。
watch {var1,var2,var3}自动跟踪改变的值,只要有改变才显示watch。要删除watch,用d N,N代表watch编号,用i b可以查看该编号。注意:watch需要r之后才能设置。
gdb死循环程序按键盘ctrl+c可结束程序
****************
要查看内存地址的内容用x /nfu 内存地址。以下是n、f、u的解释
其中n表示要显示多少个内存单元。
f表示显示方式, 可取如下值
x 按十六进制格式显示变量。
d 按十进制格式显示变量。
u 按十进制格式显示无符号整型。
o 按八进制格式显示变量。
t 按二进制格式显示变量。
a 按十六进制格式显示变量。
i 指令地址格式
c 按字符格式显示变量。
f 按浮点数格式显示变量。
u表示一个地址单元的长度
b表示单字节,
h表示双字节,
w表示四字节,
g表示八字节
*****************
6、linux入门基础(四)Gdb调试程序
Gdb调试
注意:在Gcc编译选项中一定要加入
–g
退出GDB:quit
或
Ctrl+d
调试过程:
1.
查看文件
命令:
(gdb)
l
命令:(gdb)
b
行号
注:到第17行停止,并没有执行17行
3.
查看断点情况
info
b
4.
运行代码
r
命令:
(gdb)
r
(也可以指定行开始运行,在r后面加上行号)
5.
查看变量值
p
命令:(gdb)
p
变量名
6.
设置监视点:
watch
z
(变量名)
也可以是复杂的表达式
7.
单步运行
命令:(gdb)
n
(逐过程)
8.逐步,会进入函数
命令:(gdb)
s
9.条件断点
将正常断点转变为条件断点:condition
如:condition
1
i
==
10
只有当满足条件i
==
1时,才会在断点1处暂停
10.
恢复程序运行
c
命令:
(gdb)
c
(程序就会运行,如果没有断点,就运行剩下部分,如果有断点,就会运行到下一个断点)
11.
去除断点
clear
line_number
clear
filename:line_number
12.
help
12.1
help找出类别
12.2help从列表中
关于linux怎么去掉断点和linux怎么打断点的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。