您的位置:首页 > 科技 > IT业 > 事件营销的步骤_html网站设计源码_惠州seo排名公司_seo百度快速排名

事件营销的步骤_html网站设计源码_惠州seo排名公司_seo百度快速排名

2025/7/19 22:29:43 来源:https://blog.csdn.net/2401_86702190/article/details/146434124  浏览:    关键词:事件营销的步骤_html网站设计源码_惠州seo排名公司_seo百度快速排名
事件营销的步骤_html网站设计源码_惠州seo排名公司_seo百度快速排名

介绍

安装

检查软件包列表版本

安装

gdb安装

cgdb安装

验证安装

使用

注意事项

常用命令

cgdb中

gdb/cgdb中

1.读取可执行程序格式

2.列出代码

3.打断点

4.删除断点

5.查看断点

6.禁用断点

7.查看信息

8.调试

小知识


介绍

gdb(GUN Debugger):是一个命令行调试工具,主要用于C/C++语言编写的程序。

cgdb:gdb的增强版,提供了一个友好的用户界面,上部显示源代码,下部为gdb命令行。

安装

CentOS 中使用yum,Ubuntu中使用apt。   关于yum和apt的介绍,在之前的文章中有。

检查软件包列表版本

首先,确保软件包列表是最新的,

sudo yum/apt update

安装

gdb安装

sudo yum/apt install gdb

对于CentOS 8及以上版本

sudo dnf install gdb

cgdb安装

对于Ubuntu,直接安装cgdb即可

sudo apt install cgdb

CentOS默认的软件仓库中没有cgbd,安装需要进行源码编译安装

1.安装依赖

sudo yum install git automake autoconf flex texinfo ncurses-devel

如果是CentOS 8及以上版本

sudo dnf install git automake autoconf flex texinfo ncurses-devel

2.下载cgdb源码

git clone https://github.com/cgdb/cgdb.git

cd cgdb

3.编译和安装

sh autogen.sh

./configure

make

sudo make install

验证安装

gdb/cgdb --version

使用

注意事项

1.可执行的二进制文件才能进行调试

2.只有带调试信息的可执行二进制文件才可以调试,gcc/g++默认以无调试信息的版本发布,使用-g选项可以发布debug版本的可执行程序。

gcc/g++ 源文件 -g 

3.gdb/cgdb 文件名 :进入调试,但只是进入调试,并不会运行程序。

常用命令

cgdb中

:break:在光标所在行设置断点。

/:在源代码窗口中搜索文本。

i:切换到 GDB 命令行窗口。

ESC:切换到源代码窗口。

gdb/cgdb中
1.读取可执行程序格式

readelf -S 文件名

2.列出代码

l/list :显示从文件开始位置的代码,继续输入l/list或者enter会继续向下显示。

l/list 行号:显示指定行号附近的代码

l/list 函数名:显示指定函数的代码

l/list 起始行号,结束行号:显示指定区间代码

l/list 文件名:行号  or  l/list 文件名:函数名     :GDB 会显示指定文件中特定行号或函数的代码。

3.打断点

断点按编号来操作

b 行号

在指定行打断点

b 文件名:函数名/行号

在指定位置打断点


b 行号 if 条件表达式

在指定行打条件断点

condition 断点编号 条件表达式

更改条件断点条件,或者给普通断点加条件

4.删除断点

d 断点编号 

删除断点

 

d breakpoints 

删除所有断点

5.查看断点

info b 

查看断点信息

6.禁用断点

disable 断点编号

禁用指定断点

disable breakpoints 

禁用所有断点


enable 断点标号

启用指定断点

enable breakpoints

启用所有断点

7.查看信息

info b

查看断点信息

info i

查看当前正在debug的程序信息

info local

显示当前函数或作用域中所有局部变量的信息

8.调试

r(run)

开始调试

注:就是启动程序开始运行,如果无断点,会直接运行至程序结束。

n(next)

逐过程调试,不进入函数

s(step)

逐语句调试,进入函数

until 行号

执行到指定行

 

c(continue) 

跳到下一个断点,如果无断点,结束运行

 

finish 

执行到当前函数返回停止


p 变量

查看变量值

p &变量

查看变量地址

display 变量/&变量

设置为常显示

undisplay 编号(display生成的常显示的变量的编号)

取消常显示

 

bt(backtrace)

查看调用堆栈

watch 变量

如果调试中watch变化会通知

set var 变量 = 值

更改此次调试中变量的值,不会修改代码

小知识

1.回车:将光标移动到当前行的开头

2.对于rand这个函数,如果将srand这个设置随机数种子的函数注释掉,只要不重新编译,再次运行产生的随机值不变

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com