- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二 命令解释程序的使用
一、实验目的
掌握UNIX或LINUX环境下命令解释程序的使用
能对编写简单的C程序,进行编译运行和调试。
二、实验内容
输入LINUX相关命令后记录系统输出
简单的C程序,进行编译运行和调试
三、实验步骤
1 命令操作
浏览目录和文件的各种属性 ls –l、
显示文件内容 cat、more、
改变文件和目录的权限chmod、
显示当前目录 pwd、
文字统计 wc、
查看时间命令 date 、time、
帮助命令 help、
查看与删除进程命令ps, kill、
查看在线用户 who、
2 GNU gcc
GCC 是GNU提供的C 和C++ 编译器。实际上,GCC 能够编译三种语言:C、C++ 和Object C(C 语言的一种面向对象扩展)。利用gcc命令可同时编译并连接C 和C++ 源程序。如果你有两个或少数几个C 源文件,也可以方便地利用GCC 编译、连接并生成可执行文件。gcc 命令的基本用法如下:
gcc [options] [filenames]
gcc的主要选项:
-ansi 只支持ANSI 标准的C 语法。这一选项将禁止GNU C 的某些特色,例如asm 或typeof 关键词。
-c 只编译并生成目标文件。
-DMACRO 以字符串“1”定义MACRO 宏。
-DMACRO=DEFN 以字符串“DEFN”定义MACRO 宏。
-E 只运行C 预编译器。
-g 生成调试信息。GNU 调试器可利用该信息。
-IDIRECTORY 指定额外的头文件搜索路径DIRECTORY。
-LDIRECTORY 指定额外的函数库搜索路径DIRECTORY。
-lLIBRARY 连接时搜索指定的函数库LIBRARY。
-m486 针对486 进行代码优化。
-o FILE 生成指定的输出文件。用在生成可执行文件时。
-O0 不进行优化处理。
-O 或-O1 优化生成代码。
-O2 进一步优化。
-O3 比-O2 更进一步优化,包括inline 函数。
-shared 生成共享目标文件。通常用在建立共享库时。
-static 禁止使用共享连接。
-UMACRO 取消对MACRO 宏的定义。
-w 不生成任何警告信息。
-Wall 生成所有警告信息。
1 输入gcc test.c
2 输入ls查看,目录下应该有个a.out文件
3 输入./a.out,运行程序,屏幕上显示
The string is hello world
The string printed backward is
4 如果想给程序重命名,使用编译选项-o重新编译。输入gcc –o test test.c
5 输入ls查看,目录下应该有个test文件
3 输入 ./test,运行程序
这个程序执行时显示如下结果:
The string is hello world
The string printed backward is
输出的第一行是正确的,但第二行打印出的东西并不是我们所期望的。我们所设想的输出应该是: The string printed backward is dlrow olleh。由于某些原因,my_print2 函数没有正常工作。下面让我们用gdb 看看问题究竟出在哪儿。
3 GNU gdb
gdb 是一个用来调试C 和C++ 程序的强力调试器。以下是gdb 所提供的一些功能:它使你能监视你程序中变量的值;它使你能设置断点以使程序在指定的代码行上停止执行;它使你能一行行的执行你的代码。 在命令行上键入gdb并按回车键就可以运行gdb 了。
gdb 的常用命令:
File 装入想要调试的可执行文件。
List 列出产生执行文件的源代码的一部分。
Run 执行当前被调试的程序。
Break 在代码里设置断点,这将使程序执行到这里时被挂起。
Next 执行一行源代码但不进入函数内部。
Step 执行一行源代码而且进入函数内部。
Watch 使你能监视一个变量的值而不管它何时被改变。
Print 使你能查看变量值。
Kill 终止正在调试的程序。
Quit 终止gdb。
1加入调试编译选项-ggdb,重新编译。输入gcc -ggdb -o test test.c
2输入命令gdb进入调试环境。
3在gdb 命令行提示符下键入file test,装入程序。
屏幕显示:Reading symbols from test...done.
4输入命令run,运行程序。
屏幕显示:
Starting program: /home/zjh/test
The string is hello world
The string printed backward is
Program exi
您可能关注的文档
- JSON入门指南【DOC精选】.doc
- JB CatsEye名片扫描机开发问题分析【DOC精选】.doc
- jsp代码规范【DOC精选】.doc
- jsp,servlet编码问题【DOC精选】.doc
- jsp开发规范【DOC精选】.doc
- JSP中导入导出Excel文件【DOC精选】.doc
- jsp实验-基本语法和隐含对象【DOC精选】.doc
- JSTL教程【DOC精选】.doc
- JSTL 入门 表达式语言【DOC精选】.doc
- JSP页面中常用四种标签【DOC精选】.doc
- 2025年中化集团方舟生招聘笔试备考题库(带答案详解).pdf
- 2025年中建西南设计院招聘笔试备考题库(带答案详解).pdf
- 2025年南通市慈善总会招聘笔试备考题库(带答案详解).pdf
- 2025年江西网吉安分站招聘笔试备考题库(带答案详解).pdf
- 2025年山西三晋都市报招聘笔试备考题库(带答案详解).pdf
- 2025年山西省高河能源招聘笔试备考题库(带答案详解).pdf
- 2024年贵州省毕节地区大方县大水乡招聘社区工作者真题含答案详解.docx
- 2024年贵州省贵阳市开阳县永温乡招聘社区工作者真题及答案详解1套.docx
- 2024年贵州省贵阳市南明区新华路街道招聘社区工作者真题及答案详解1套.docx
- 2024年贵州省遵义市仁怀市长岗镇招聘社区工作者真题及参考答案详解.docx
最近下载
- 2025年太仓市太訸控股集团有限公司第二批公开招聘19人笔试备考题库及答案解析.docx VIP
- 《食管癌综合治疗新进展》课件.ppt VIP
- 商铺租赁合同电子版下载打印.docx VIP
- 2025年太仓市太訸控股集团有限公司第二批公开招聘19人笔试参考题库附答案解析.docx VIP
- 2025年太仓市太訸控股集团有限公司第二批公开招聘19人备考题库及答案解析.docx VIP
- 《危重患者的抢救》课件.ppt VIP
- 孕产妇心肺复苏要点课件.pptx VIP
- 农村小学中高年级学生阅读兴趣培养策略研究-课题申请评审书.docx VIP
- 工程制图制图基础.ppt VIP
- 简约产品订货合同模板.docx VIP
文档评论(0)