1.创建动态库解析
2.创建main.c调用库文件测试
gcc main.c ./libmain.so -o main --生成可执行文件
注意:清楚库文件在哪里
3.内存的分配
5.GDB调试工具具有以下功能
1>监视程序中变量的值
2>设置断点以使程序在指定的代码行上停止执行
3>一行一行的执行代码
6.GDB常用命令
7.GDB调试编译代码
在==编译时用 -g 选项 ==打开调试选项
8.常用命令的使用
1》装入调试文件 例:gdb main <main是main.c生成的可执行文件>
例 : l,list
查询行号 l 行号 l 15
查询多行 l 第几行,第几行 l 2,16
3》运行命令
1>运行命令run或r <运行程序>
9.断点操作
1》设置断点break或b
设置断点要结合list查看代码行号,设置成功后,使用run命令运行程序
避免断点设置在空行或者注释行上
1>根据行号设置断点
break 行号
2>根据函数设置断点
break 函数
3>根据表达式断点
break 行号 if i==3<行号后面是表达式>
2》显示当前gdb断电信息info break
程序运行结束后,可以查看所有断电信息
3》禁止或启用断点enable或disable
disable break
4》删除断点delete break或 d
delete/d break 行号
5》清除断点clear,同样也是删除断点
clear 行号
6》观察点watch
watch a = 10 -设置变量
10.查看数据
1》查看变量值print或p
print/p 变量名
11.自动显示变量display
当程序运行停住时,自动显示变量值
12.结束当前函数运行finish
13.结束当前for循环jump
最好在同一个函数,不能超过本函数,否则可能会出错
jump 行号
14.查看变量类型ptype
ptype 变量名
15.列出当前程序存活的栈帧bt
栈帧:随着函数调用而在stack上开辟一片内存空间。用于存放函数调用
时产生的局部变量和临时值。
16.根据栈帧编号,切换栈帧frame
17.打印寄存器
17.退出gdb用quit或q
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yule263.com 版权所有 湘ICP备2023023988号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务