收藏 分享(赏)

实验二Linux下C语言开发环境及程序调试 (1).doc

上传人:精品资料 文档编号:10817443 上传时间:2020-01-11 格式:DOC 页数:2 大小:25.50KB
下载 相关 举报
实验二Linux下C语言开发环境及程序调试 (1).doc_第1页
第1页 / 共2页
实验二Linux下C语言开发环境及程序调试 (1).doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、实验二 Linux 下 C 语言开发环境及程序调试一、实验目的1、熟悉 Linux 下的 C 语言程序编译流程。2、掌握 vi、gcc、gdb 的使用。二、实验设备硬件:PC 机。软件:VMware Workstation 虚拟机、Linux 操作系统。三、实验预习要求1、gcc 编译过程及常用编译选项。2、gdb 调试器使用流程,查看文件、设置断点、单步运行等 gdb 基本命令的使用。四、实验内容及步骤1、Linux 下 C 语言开发流程及 GCC 编译器的使用。(1)启动虚拟机,进入 Linux 操作系统,然后启动终端。(2)使用 Vim 编辑源程序,练习命令模式、编辑模式、底行模式之间的

2、切换,在终端中输入 vi hello.c,编辑完成后存盘。 (注:代码自己编写)(3)练习以下编译选项的使用:gcc -E hello.c -o hello.i gcc -S hello.i -o hello.S gcc -c hello.S -o hello.o /目标文件gcc hello.o -o hello /可执行文件(4)运行程序,在终端中查看程序运行结果。2、GDB 调试器的使用。使用 Vim 编辑源程序,在终端中输入 vi test.c,输入如下源代码,编辑完成后存盘。此代码的功能为输出倒序 main 函数中定义的字符串,但结果没有输出显示,现通过调试的方式来解决程序中存在的问

3、题。程序源代码如下:#include int display1 (char *string)int display2 (char *string1)int main ()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 (strin

4、g1);string2 = (char *) malloc (size + 1);for (i = 0; i = size; i+)string2size - i = string1i;string2size+1 = ;printf(“The string afterward is %sn“,string2);(1)用 Gcc 编译:gcc -g greet.c -o greet 。(2)运行 greet:./greet ,查看输出结果是否正确。 (3)启动 Gdb 调试:gdb greet查看源代码:l在 30 行(for 循环处)设置断点:b 30在 33 行(printf 函数处)设置断

5、点:b 33。查看断点设置情况:info b运行代码:r单步运行代码:n查看暂停点变量值:p string2size - i继续单步运行代码数次,并使用命令查看,发现 string2size-1的值正确继续程序的运行:c程序在 printf 前停止运行,此时依次查看 string20、string21 ,找到程序运行结果不正确的原因。退出 Gdb:q将程序修改正确并使用 Gcc 重新编译,查看运行结果:./greet 五、可选题编程实现输入任意 2 个小于 100 的正整数 a 和 b,然后输出 100 以内能同时整除 a 和 b 的所有数,并使用 gcc 和 gdb 编译和调试。六、实验报告要求认真记录调试过程和所有调试的程序代码。

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

当前位置:首页 > 企业管理 > 管理学资料

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


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

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

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