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 就可以进行调试了

相关推荐
落羽的落羽6 分钟前
【C++】深入浅出“图”——图的基本概念与存储结构
服务器·开发语言·数据结构·c++·人工智能·机器学习·图搜索算法
秋深枫叶红9 分钟前
嵌入式第三十九篇——linux系统编程——信号通信、共享内存
linux·运维·服务器·学习
咸鱼加辣13 分钟前
【nginx面试题】nginx虚拟
运维·nginx·github
乌萨奇也要立志学C++16 分钟前
【Linux】线程互斥与互斥量全解析:原理、实践与封装
linux·服务器
hweiyu0017 分钟前
Linux命令:gzip
linux
老王熬夜敲代码24 分钟前
IP和MAC的深入理解
linux·网络·笔记·网络协议
梁辰兴26 分钟前
计算机网络基础:以太网的信道利用率
服务器·网络·计算机网络·计算机·以太网·信道利用率·梁辰兴
开开心心就好31 分钟前
版本转换工具,支持Win双系统零售批量版
linux·运维·服务器·pdf·散列表·零售·1024程序员节
秋深枫叶红34 分钟前
嵌入式第三十八篇——linux系统编程——IPC进程间通信
linux·服务器·网络·学习
MediaTea39 分钟前
思考与练习(第十章 文件与数据格式化)
java·linux·服务器·前端·javascript