- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《《linux软件工程师(C语言)实用教程》第1章》.ppt
1.3 gdb调试器 1. gdb概述 Linux下的gdb调试器,是一款GNU组织开发并发布的UNIX/Linux下的程序调试工具。它没有图形化的友好界面,但功能强大。 在进行应用程序的调试之前,要注意的是gdb进行调试的是可执行文件,而不是如“.c”这样的源代码文件。因此,需要先通过gcc编译生成可执行文件才能用gdb进行调试。 1.3 gdb调试器 2. 使用gdb调试程序 例1-9:设计一个程序,要求输入两个整数,判断并输出其中的最小数。 步骤 1:编辑源程序代码: 1.3 gdb调试器 步骤 2: 用gcc编译程序 [root@localhost root]#gcc 1-9.c –o 1-9 –g 步骤 3: 进入gdb调试环境 [root@localhost root]#gdb 1-9 注意:gdb是命令行调试环境,调试程序都在提示符“(gdb)”后输入相应的命令,gdb的命令很多,可以在提示符“(gdb)”后输入help进行查找。 常用的gdb命令 1.3 gdb调试器 步骤 4: 用gdb调试程序 (1)查看源文件 在gdb中输入“l”(list)就可以查看程序源代码,一次显示10行; 注意:gdb命令“l”(list)列出源代码的时候,要确保原来的源程序还在,如果读者以为这象反汇编一样给出代码,那就错了,其实只是列出源文件的内容。特别提示:“list”+行号:查看指定位置的代码,如“list 1”就是从第一行开始列出源代码。 (2)设置断点 在gdb中设置断点命令是“b”(break),后面跟行号或者函数名。 如:(gdb) b 10 1.3 gdb调试器 (3)查看断点信息 用命令“info b”(info break)查看断点信息。 注意:gdb在一个程序中可以设置多个断点,有多个断点中断时,“Num”处显示断点序号。 (4)运行程序:输入“r”(run)开始运行程序。 注意:gdb默认从第一行开始运行,如果要从程序中指定行开始运行,只需输入“r”+行号。 (5)查看变量值 程序运行到断点处会自动暂停,输入“p 变量名” 1.3 gdb调试器 调试程序时,可能需要修改变量值,程序运行到断点处时,输入“set 变量=设定值”,例如给变量“a2” 赋值11,输入“set a2=11”。 gdb在显示变量值时都会在对应值前加“$n”标记,它是当前变量值的引用标记,以后想再引用此变量,可以直接使用“$n”,提高了调试效率 。 注意:查看变量值,不能在程序结束后。 1.3 gdb调试器 (6)单步运行 在断点处输入 “n”(next)或者“s”(step) 。它们之间的区别在于:若有函数调用时,“s”会进入该函数而“n”不会进入该函数。 (7)继续运行程序 输入“c”(continue)命令恢复程序的正常运行,把剩余的程序执行完,并显示执行结果。 (8)退出gdb环境:输入“q”(quit)命令。 思考题:此例中,如果比较的结果刚好相反,应该把断点设置在第几行?调试的时候还需要注意什么才能看出变量的值? 思考与实验 编写一个简单的c语言程序:输出两行文字“Linux下的c也不是太难嘛!”,在Linux下编辑、编译、运行。 编写一个简单的c语言程序:根据输入的两个整数求平均值并且在终端输出,通过gcc编译器得到它的汇编程序文件。 用gdb调试器调试上面第2题的程序,查看程序执行每一步变量的值,熟悉gdb的使用流程。 编写一个c语言程序:打印输出所有“水仙花数”,用gdb调试程序(给出步骤,至少十步以上)。所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一水仙花数,因为153=13+53+33。 第 1 章 Linux系统程序设计基础 本章重点 编辑、编译及运行Linux c程序 gcc编译器的使用 gdb调试器的使用 1.1 第一个Linux c程序 例1-1:设计一个程序,要求在屏幕上输出“这是第一个Linux c程序!”。 步骤 1:设计编辑源程序代码 使用文本编辑器vim,在终端中输出: [root@localhost root]#vim 1-1.c 输入完成后存盘:按ESC键→输入“:wq”回车 1.1 第一个Linux c程序 步骤 2:编译程序 查看当前目录下是否有1-1.c文件,输入命令: [root@localhost root]#ls 1-1.c 编译: [root@localhost root]#gcc 1-1.c -o 1-1 [root@localhost root]# 步骤 3:运行程序 [root@localhost root]#ls 1-1.c 1-1 [root@localhost root
您可能关注的文档
- 《ttmik-workbook-level-2-lessons21-30》.pdf
- 《TTRegs Light Motor Vehicle Study Guide - Printable》.pdf
- 《TWaver Java开发手册》.pdf
- 《Two-level downlink scheduling for real-time》.pdf
- 《Two-level modeling framework for pedestrian route choice and walking behaviors》.pdf
- 《Two-level refined direct optimization》.pdf
- 《Two-photon laser scanning fluorescence microscopy using photonic crystal fiber》.pdf
- 《U3 my first job》.ppt
- 《Ubuntu下配置java环境(JDK1.6+eclipse+myeclipse+tomcat)》.doc
- 《Ubuntu系统环境下搭建LAMP服务器》.doc
最近下载
- 《系统动力学》全套教学课件(共15章完整版).pptx
- 数学必修一导学案全册:必修一导学案与练习全册.pdf VIP
- [兴安盟]2024年内蒙古兴安盟盟直事业单位引进人才35人 笔试历年典型考题及考点剖析附答案详解.doc
- 律师业务档案卷宗封面格式——司律通字(1991)153号.docx
- 2024年新改版苏教版六年级下册科学全册知识点(精编版) .pdf
- YDT 2319-2020数据设备用网络机柜.pdf
- 2025年《可爱的中国》新疆地方教材(小学版)教案范文.docx VIP
- 《星巴克的中国市场营销策略分析的调查报告》3100字.pdf VIP
- 建筑工程技术毕业设计开题报告.docx VIP
- 施工图说明模板及样图-建筑.pdf VIP
文档评论(0)