C与语言GDB调试

C语言第二十天笔记

GDB

GDB是GUN开源组织发布的一款强大的Unix/Linux下的程序调试工具。

GDB常用命令

GDB查看源代码指令------list

显示指定位置的周围的源代码;可以通过行号、文件名、函数名以及三者之间的组合来定位指定位 置,显示代码的行数可以通过设置listsize来设定,但是该设置只是本次有效;简化命令:l

复制代码
set listsize 20                    # 每次list显示指定区域的20行代码,默认10行    
show listsizelist   linenumber     # 显示 linenumber附近的代码    
list 50                            # 显示当前源文件的第50行的附近代码   
list function                      # 显示函数代码   
list test.c:30                     # 显示指定源文件的第30行的附近代码  
list +/-                           # 向后/前显示源代码  
list <first>,<last>                # 显示first ,last之间的内容 
list 100,200                       # 显示当前源文件代码行100到200间的行
GDB查看设置------info
复制代码
 info registers               # 查看寄存器信息         
info frame                    # 查看栈信息(帧信息)       
info  locals                  #显示当前函数的所有局部变量名及其值       
info break/b                  #查看断点信息       
info args                     #显示当前函数的参数名及其值 
info prog                     #查看调试程序的执行状态       
info files                    #显示调试文件的详细信息       


显示调试的代码
设置显示的行数
c 复制代码
set listsize 20 //设置显示行数,默认10行
    
list 1/l 1 //1是起始行号
GDB运行程序
c 复制代码
run
设置调试断点
c 复制代码
b 15 //15设置断点
清除断点
c 复制代码
info break 			//查看断点信息
delete break 1 		//删除编号为1的断点
clear linenum 		//清除linenum行上所有断点 clear 15
调试代码
c 复制代码
run //运行程序
  
continue  //运行到条件满足为止
查看变量值
c 复制代码
display //变量名
退出GDB
c 复制代码
quit/q
相关推荐
嵌入式在学无敌大神1 小时前
Linux网络编程:TCP多进程/多线程并发服务器详解
linux·服务器·网络
一刀到底2111 小时前
从实列中学习linux shell5: 利用shell 脚本 检测硬盘空间容量,当使用量达到80%的时候 发送邮件
linux·运维·学习
Ops菜鸟(Xu JieHao)2 小时前
Linux Nginx网站服务【完整版】
linux·运维·服务器·nginx·网站
ikun·3 小时前
nginx 核心功能
linux·服务器·nginx
鱼嘻4 小时前
数据结构------C语言经典题目(6)
linux·c语言·开发语言·数据结构·算法
千谦阙听4 小时前
数据结构篇:线性表的另一表达—链表之单链表(下篇)
c语言·数据结构·链表·visual studio
x-cmd4 小时前
[250430] Kali Linux 存储库密钥丢失导致所有用户无法正常更新 APT
linux·运维·服务器·kali linux
星雨流星天的笔记本5 小时前
3、Linux操作系统下,linux的技术手册使用(man)
linux·服务器
一刀到底2115 小时前
从实列中学习linux shell6: 写一个 shell 脚本 过滤 恶意ip 攻击
linux·运维·shell
pengdott5 小时前
HAproxy+keepalived+tomcat部署高可用负载均衡实践
linux·运维·服务器·tomcat·负载均衡