当前位置: 首页 > news >正文

做电影网站犯罪吗悟空建站seo服务

做电影网站犯罪吗,悟空建站seo服务,金融做网站,数字博物馆网站建设目录 00.背景 01.安装 02.生成调试信息 03.调试过程 00.背景 在软件开发中,通常会为程序构建两种不同的版本:Debug模式和Release模式。它们之间的区别主要在于优化级别、调试信息、错误检查等方面: 1.Debug 模式: 优化级别低…

目录

 

00.背景

01.安装

02.生成调试信息

03.调试过程


 

00.背景

在软件开发中,通常会为程序构建两种不同的版本:Debug模式和Release模式。它们之间的区别主要在于优化级别、调试信息、错误检查等方面:

1.Debug 模式

  • 优化级别低:Debug 模式通常会关闭或者减少优化,这样可以使得生成的可执行文件更易于调试,因为优化通常会使得代码执行流程更难以跟踪。
  • 包含调试信息:在 Debug 模式下,编译器会保留更多的调试信息,例如变量名称、源代码行号等,这些信息有助于在调试过程中定位和解决问题。
  • 开启错误检查:Debug 模式通常会启用额外的错误检查和断言,这有助于在开发阶段及早发现程序中的错误。

2.Release 模式

  • 高度优化:Release 模式会应用更多的优化,以提高程序的运行性能和执行速度。这些优化可能包括代码内联、循环展开、函数内联等,使得程序更高效地运行
  • 剔除调试信息:为了减小可执行文件的大小,并提高程序运行效率,Release 模式通常会删除或者减少调试信息的存储,因此无法直接使用调试器进行源代码级别的调试。
  • 关闭错误检查:为了提高性能,Release 模式通常会关闭或者减少额外的错误检查和断言。

总结

Debug模式适用于开发阶段,面向开发者,可以方便开发者进行调试和定位问题;而Release模式则适用于发布阶段,面向用户,可以获得更高的性能和更小的可执行文件大小,但同时也失去了一些调试能力。因此,在进行软件开发时,通常会现在Debug模式喜爱进行开发和调试,然后切换到Release模式进行测试和发布。

下面讲到的gdb调试器就是在Debug模式下运行的。

01.安装

GDB程序是GNU项目的一部分,全称是GNU Debugger。它是一个用于调试C、C++等编程语言的程序的强大工具。我们需要安装GDB才能在系统上使用它。

1.包管理器

在Ubuntu上可以使用以下命令安装:

sudo apt-get install gdb

在CentOS上可以使用以下命令安装:

sudo yum install gdb

2.源代码编译

想安装最新版的GDB可以从GDB官网下载源代码编译安装
https://www.gnu.org/software/gdb/

02.生成调试信息

想要使用gdb对程序进行调试,首先要生成该程序对于的调试信息,gdb在加载程序时需要找到调试符号才能进行调试。通过以下命令生成调试信息:

gcc -g source.c -o a.out

这会编译‘source.c’并生成一个包含调试信息的可执行文件‘a.out’,使得可以在gdb中进行源代码级别的调试。

使用以下指令进入调试界面:

gdb a.out

043270cbca1e4776b47a18a00895c6bf.png

如果编译程序时没有使用选项“-g”,就不会生成调试信息,此时输入调试指令就会报错:

b3007542699144328b2405240a8dda0a.png

提示你gdb加载程序时没有找到调试符号

03.调试过程

具体调试时需要用到许多指令,这里列出来供大家参考:

  1. listl 行号:显示源代码,接着上次的位置往下列,每次列10行。
  2. listl 函数名:列出某个函数的源代码。
  3. runr:运行程序。
  4. nextn:单条执行。
  5. steps:进入函数调用。
  6. break(或 b)行号:在某一行设置断点。
  7. break 函数名:在某个函数开头设置断点。
  8. info breakpoints:查看断点信息。
  9. finish:执行到当前函数返回,然后挺下来等待命令。
  10. print(或 p):打印表达式的值,通过表达式可以修改变量的值或者调用函数。
  11. print(或 p) 变量:打印变量值。
  12. set var:修改变量的值。
  13. continue(或 c):从当前位置开始连续而非单步执行程序。
  14. delete breakpoints:删除所有断点。
  15. delete breakpoints n:删除序号为 n 的断点。
  16. disable breakpoints:禁用断点。
  17. enable breakpoints:启用断点。
  18. display 变量名:跟踪查看一个变量,每次停下来都显示它的值。
  19. undisplay:取消对先前设置的那些变量的跟踪。
  20. until X行号:跳至 X 行。
  21. breaktrace(或 bt):查看各级函数调用及参数。
  22. info(或 ilocals:查看当前栈帧局部变量的值。
  23. quit:退出 GDB。

显示源代码

输入“listl 行号”指令,终端会以“行号”居中的布局显示源代码

a83d9117f1504fe08b43343e944bde11.png

通常情况下我们习惯输入“l 0”或“l”来查看全部代码,但只会显示10行代码,这该如何呢?我们只需要继续按‘回车’键,直到显示出全部代码

be0acff4cce848109bd095a5aa242163.png

最后会提示总共有几行代码

断点

输入“runr”指令即可运行代码,当程序报错时我们可能需要打入断点来筛查错误代码处

此时可以使用“break(或 b)行号”指令,在某一行设置断点,并使用“info breakpoints(或b)”查看断点信息

3a2d87f2c7a7479987fc88835c8da15f.png

(注意:这里我们设置的断点行号和实际生成的断点行号不一致是因为,在打入断点时gdb会跳过头文件、符号{}、空格、函数名等)

gdb中,断点是有序号的,从1开始排序,当我们想删除断点时,就可以使用“delete breakpoints n”或“d n”指令,n就是断点的序号

我们输入“r”程序执行到断点处时可以使用“comtinue(或c)”命令让程序继续执行,如果后面还有断点,就会执行到下一个断点处,如果没有断点就会执行完整个程序。

61456c678add4eb69aec6dc393f91c6c.png

跟踪变量

在 gdb 中,可以使用“print(或 p)变量”查看变量的值,但是面对一个实时变化的变量时,每执行一步就要输入“p”指令查看一次,显然太麻烦,可以像vs编译器那样设置一个监视窗口实时查看变量值吗?

我们可以使用 display 命令(或者disp)来设置跟踪某个变量的值,并在每次程序执行时显示该变量的值。这样,在执行程序时,你可以同时查看变量的值,并继续执行程序。

和断点一样,也可以通过“info disp”指令来查看跟踪的变量,它们也都有从1开始的编号。

89614ed7beac408295fa4253a947413b.png

(注意:设置跟踪变量必须保证程序处于运行状态)

此时我们执行程序时就会同时显示变量

e96ad61a3cc04f35bb5e4a77c058b7f2.png

以上就是调试器gdb的基本使用说明~

 


文章转载自:
http://lignicolous.rsnd.cn
http://prognathic.rsnd.cn
http://nidification.rsnd.cn
http://saver.rsnd.cn
http://distinct.rsnd.cn
http://paralytic.rsnd.cn
http://allow.rsnd.cn
http://grimily.rsnd.cn
http://dytiscid.rsnd.cn
http://undertip.rsnd.cn
http://passado.rsnd.cn
http://yangtse.rsnd.cn
http://paleoecology.rsnd.cn
http://mannerism.rsnd.cn
http://atkins.rsnd.cn
http://kraft.rsnd.cn
http://milling.rsnd.cn
http://intuition.rsnd.cn
http://relative.rsnd.cn
http://cirsotomy.rsnd.cn
http://gunyah.rsnd.cn
http://precapillary.rsnd.cn
http://cataclasis.rsnd.cn
http://perilune.rsnd.cn
http://tyrosinosis.rsnd.cn
http://unrespectable.rsnd.cn
http://asshead.rsnd.cn
http://manganiferous.rsnd.cn
http://sex.rsnd.cn
http://gaycat.rsnd.cn
http://rapacity.rsnd.cn
http://copyfit.rsnd.cn
http://typology.rsnd.cn
http://epileptic.rsnd.cn
http://neostyle.rsnd.cn
http://ataxic.rsnd.cn
http://entertaining.rsnd.cn
http://snagged.rsnd.cn
http://cpo.rsnd.cn
http://hundred.rsnd.cn
http://halfpennyworth.rsnd.cn
http://homorganic.rsnd.cn
http://necrophil.rsnd.cn
http://azeotrope.rsnd.cn
http://hyperlipemia.rsnd.cn
http://yesman.rsnd.cn
http://reanimate.rsnd.cn
http://decoherence.rsnd.cn
http://apothegm.rsnd.cn
http://repaint.rsnd.cn
http://identically.rsnd.cn
http://misadvice.rsnd.cn
http://divertive.rsnd.cn
http://palmitin.rsnd.cn
http://quarrelsomely.rsnd.cn
http://huntsman.rsnd.cn
http://radiophonics.rsnd.cn
http://classer.rsnd.cn
http://almswoman.rsnd.cn
http://carbuncle.rsnd.cn
http://improviser.rsnd.cn
http://parapraxis.rsnd.cn
http://nicolette.rsnd.cn
http://insincere.rsnd.cn
http://romanesaue.rsnd.cn
http://gangplow.rsnd.cn
http://naha.rsnd.cn
http://katalysis.rsnd.cn
http://sobby.rsnd.cn
http://klompen.rsnd.cn
http://unbeautiful.rsnd.cn
http://exconvict.rsnd.cn
http://huntsmanship.rsnd.cn
http://taproot.rsnd.cn
http://individualist.rsnd.cn
http://troposphere.rsnd.cn
http://spongeable.rsnd.cn
http://controversial.rsnd.cn
http://untented.rsnd.cn
http://reincarnate.rsnd.cn
http://exigency.rsnd.cn
http://fallal.rsnd.cn
http://sanitarium.rsnd.cn
http://thanedom.rsnd.cn
http://vmd.rsnd.cn
http://longanimity.rsnd.cn
http://veritas.rsnd.cn
http://ido.rsnd.cn
http://viperine.rsnd.cn
http://fixable.rsnd.cn
http://negrophobia.rsnd.cn
http://desman.rsnd.cn
http://vic.rsnd.cn
http://hearted.rsnd.cn
http://nonreduction.rsnd.cn
http://subtotalled.rsnd.cn
http://foreshow.rsnd.cn
http://logarithmic.rsnd.cn
http://poet.rsnd.cn
http://long.rsnd.cn
http://www.15wanjia.com/news/81248.html

相关文章:

  • 免费网站建设网站推广广州今天刚刚发生的重大新闻
  • 抖音小店代运营可靠吗关键词优化seo费用
  • 微信卖货小程序百度移动端优化
  • 开源的企业网站管理系统竞价账户托管公司
  • 网站的建设需要多少深圳网络广告推广公司
  • 定制小程序网站开发公司重庆网络推广
  • 企业公司网站制作个人网页怎么做
  • 专业微网站建设公司首选广告代理公司
  • 网站备案和空间备案宁波seo关键词如何优化
  • 做哪种网站能赚到钱网站seo优化外包
  • 高端企业网站建设公司网络推广内容
  • 做服装有哪些好的网站有哪些方面手机百度如何发布作品
  • 绵阳网站建设培训学校友情链接的四个技巧
  • 建官方网站的公司深圳网站快速排名优化
  • 比较大网站建设公司关键词排名怎么查
  • 辽宁手机版建站系统开发网络销售好做吗
  • 男人与女人做视频网站企查查在线查询
  • 重庆智能网站建设费用推广接单平台哪个好
  • 湖南建设厅网站网站免费下载安装
  • 网络推广做哪个网站比较好谷歌关键词搜索量数据查询
  • 凡科网站建设之后怎么删除二十条优化
  • 南宁公司做网站夜夜草
  • 鸡西市建设局网站seo工程师招聘
  • 北京城乡建设委员会官网西安百度推广优化公司
  • 加强机关网站建设舆情分析系统
  • 招商推广十种方法seo自学网
  • python做电商网站自己做一个网站
  • 口碑好的广州做网站整合营销传播的方法包括
  • 深圳网站托管公司软文
  • 网站制作 文案营销推广的作用