linux gdb 调试工具

1.写程序

首先,我们先写出一个 .c 或者.cpp程序

然后 gcc -g hello.c -o hello

或者 g++ -g hello.cpp -o hello (-g)要加

2. gdb调试

用 gdb +(可执行程序,如hello)

进入之后,有以下命令,r l b n (运行,查看,断点,逐语句向下)

info b 查看所有 断点情况

3.print &step 的应用,p s

首先,print / p 可以打印 比如arr[0] 输出1;

step/ s 可以步入到函数内 ,到调用函数的时候 s 可以直接进去

4.gdb可以通过shell 来写终端命令

例如 shell ls

5. 可以通过日志来copy 调试的命令

set logging on

6. watch * +(比如i地址)

可以实时跟踪 i 变量的变化

info watch

7.如何调试一个 core 文件 (即断掉的程序)

首先 比如 int *temp =NULL; *temp=10 ,这肯定发生错误了 ,然后,就是会生成一个文件 core. 1897

然后执行命令 gdb errtest(.o 可执行文件) core.1897

这样会显示出这个文件的错误

8.调试一个正在运行的程序

2.首先,写一个执行中的程序,比如死循环 fortest,并把它编译后台运行 gcc .o & 然后,会有 一个 进程的id 号

gdb -p ID 就可以进行调试了

相关推荐
UpYoung!1 分钟前
【Windows 文件系统管理工具】实用工具之XYplorer 完全指南:专业级文件系统管理的终极解决方案
运维·运维开发·实用工具·文件系统管理·办公学习·xyplorer·windows文件管理工具
KL's pig/猪头/爱心/猪头7 分钟前
写一个rv1106的led驱动1-整体架构
linux·驱动开发
叁金Coder9 分钟前
【CentOS-Stream-9 配置网卡信息】
linux·运维·centos
石像鬼₧魂石9 分钟前
139/445 端口(Samba 服务)渗透测试全流程总结与复习
运维·安全·ssh
赵一舟14 分钟前
linux下的磁盘清理
linux·运维·服务器
子洋19 分钟前
基于远程开发的大型前端项目实践
运维·前端·后端
会飞的小新24 分钟前
Shell 脚本中的信号与 trap:从 Ctrl+C 到优雅退出
linux·开发语言
Frdbio29 分钟前
环腺苷酸(cAMP)ELISA检测试剂盒
linux·人工智能·python
Coder_Boy_31 分钟前
基于SpringAI的在线考试系统-企业级软件研发工程应用规范案例
java·运维·spring boot·软件工程·devops
生产队队长34 分钟前
Linux:awk进行行列转换操作
android·linux·运维