收藏 分享(赏)

滕健伟--1315212033--嵌入式实验五实验报告.doc

上传人:HR专家 文档编号:6606396 上传时间:2019-04-18 格式:DOC 页数:7 大小:272.04KB
下载 相关 举报
滕健伟--1315212033--嵌入式实验五实验报告.doc_第1页
第1页 / 共7页
滕健伟--1315212033--嵌入式实验五实验报告.doc_第2页
第2页 / 共7页
滕健伟--1315212033--嵌入式实验五实验报告.doc_第3页
第3页 / 共7页
滕健伟--1315212033--嵌入式实验五实验报告.doc_第4页
第4页 / 共7页
滕健伟--1315212033--嵌入式实验五实验报告.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、嵌入式原理与应用实验实验五 gcc 编译程序与 gdb 调试程序学号 1315212033 姓名 滕健伟 班级 13 电子二班 华侨大学电子工程系实验五 gcc 编译程序与 gdb 调试程序一、实验目的1. 通过几种不同需求的程序,掌握使用gcc的各种选项编译程序。2. 通过调试一个有问题的程序,使读者进一步熟练使用 vi 操作,而且熟练掌握 gcc 编译命令及 gdb 的调试命令,通过对有问题程序的跟踪调试,进一步提高发现问题和解决问题的能力。二、实验内容: 1、学习使用gcc的各种选项编译程序。(1)编译和运行这段程序hello.c:#include int main(void)print

2、f (“Hello world!n”);return 0;(2)创建静态库,并运行程序/* pow_test.c */ #include #include int main(int argc, char *argv)unsigned int x, y;unsigned long long res;if (argc int main(void)double counter;double result;double temp;for (counter = 0; counter int display1(char *string);int display2(char *string);int mai

3、n ()char string = “Embedded Linux“;display1 (string);display2 (string);int display1 (char *string)printf (“The original string is %s n“, string);int display2 (char *string1)char *string2;int size,i;size = strlen (string1);string2 = (char *) malloc (size + 1);for (i = 0; i size; i+)string2size - i =

4、string1i;string2size+1 = ;printf(“The string afterward is %sn“,string2);(2)使用 gcc 编译这段代码,注意要加上“-g”选项以方便之后的调试。(3)运行生成的可执行文件,观察运行结果。观察这段代码并分析得知,代码所要实现的功能为将预先输入的一段字符串倒序输出,由运行结果可知,最后输出结果为空,产生了错误输出,但程序本身语法并不存在错误。(4)使用gdb调试程序,通过设置断点、单步跟踪,一步步找出错误所在。首先使用gdb调试器打开所要调试文件,再通过gdb中的命令字符list(l)查看载入的文件的代码。由观察分析知,在2

5、5行和29行设置断点最为合适,设置断点后查看所设置断点处的信息。紧接着运行代码,当程序运行到断点25处时自动停止,此时,通过命令“p” +变量名称查看变量值,此处,我选择查看size,string1和string2 的值,通过对原程序的分析可知, size为字符串string1的大小,正确; string1显示为Embedded Linux,正确;而string2 通过内存分配获得了相应的内存,此时string2 为空值;正确。选择继续运行代码,代码运行到29处时停止,重复上一步操作可知string20为空值,而string113均相对应的值,说明原程序中循环嵌套语句中出现了计算错误,错误语句为:String2size-i=string1i;(5)纠正错误,更改源程序并得到正确的结果。将上述语句更改为 string2size-i-1=string1i,再将程序重新编译一次,运行后得到正确结果。三、记录实验步骤及运行结果参考 gcc 的各种选项,设计完成上面实验的步骤,将运行结果截图,并对结果进行解释说明。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 中等教育 > 中学实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报