操作系统中的应用介绍下
使用GDB提供的frame命令可以定位到发生错误的代码段,该命令后面跟着的数值可以在backtrace命令输出结果中的行首找到。现在已经发现错误所在了,应该将 scanf(\"%d\", input);改为scanf(\"%d\", input);
冲破世俗的障碍 完成后就可以退出GDB了,命令如下: (gdb) quit
GDB的功能远远不止如此,它还可以单步跟踪程序、检查内存变量和设置断点等。 调试时可能会需要用到编译器产生的中间结果,这时可以使用-save-temps选项,让GCC将预处理代码、汇编代码和目标代码都作为文件保存起来。如果想检查生成的代码是否能够通过手工调整的办法来提高执行性能,在编译过程中生成的中间文件将会很有帮助,具体情况如下: # gcc -save-temps foo.c -o foo# ls foo*foo foo.c foo.i foo.s
GCC 支持的其它调试选项还包括-p和-pg,它们会将剖析(Profiling)信息加入到最终生成的二进制代码中。剖析信息对于找出程序的性能瓶颈很有帮助,是协助Linux程序员开发出高性能程序的有力工具。在编译时加入-p选项会在生成的代码中加入通用剖析工具(Prof)能够识别的统计信息,而- pg选项则生成只有GNU剖析工具(Gprof)才能识别的统计信息。 最后提醒一点,虽然GCC允许在优化的同时加入调试符号信息,但优化后的代码对于调试本身而言将是一个很大的挑战。代码在经过优化之后,在源程序中声明和使用的变量很可能不再使用,控制流也可能会突然跳转到意外的地方,循环语句有可能因为循环展开而变得到处都有,所有这些对调试来讲都将是一场噩梦。建议在调试的时候最好不使用任何优化选项,只有当程序在最终发行的时候才考虑对其进行优化。
补气流失怎么办上海不孕不育医院哪家好
呼和浩特哪家白癜风医院
- 兴证策略:A股全景 个人风格与估值
- 限时⇩5000页全脑思维训练,全面锻炼孩子逻辑思维,专注力和魄力!
- 夏季是色彩的狂欢!愿这些五彩斑斓的壁纸能灿烂你的夏末
- 回交技术——是减少脑卒中小鼠模型临床转化成功率的潜在工具
- 感冒之后还要坚持受训吗?
- 自制花椒油,不可直接用油炸!多做1步,口感麻味道香,没苦味
- 1821年宣布独立的古巴,为什么在43年以后,再次宣布独立?
- 什么怒什么怨?上外男生向女生咖啡杯中投“异物”,校方回应来了
- 有些女生可能会说:不想要像穿搭三那样太极度随性休闲
- 工行石家庄分行组织中选训练积极备战全市金融系统篮球比赛
- 日本黄金价格连创新较高 分析:稳健投资需求正增加
- 如果你贫困中没有朋友,亲人也很疏远,做好三件事你就赢了