- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
西北工业大学操作系统实验报告实验三.doc
实验三LINUX的C语言编程
一、 实验目的
学习在FreeBSD下使用vi编辑c语言代码,使用gcc编译,并运行。
二、 实验内容与要求
1、 查阅资料,常握Vi编辑器的基本使用,包括两种不同模式的区别,如何在两种模 式之间切换,以及常用的编辑命令等;
2、 使用vi编写一个c程序,要求该程序通过命令行接收用户的输入,其输入参数为 FreeBSD系统中的任意文本文件,接收输入后,c程序读取该文件内容,并打印在屏幕 上。编辑好后,存为.C文件(如8.C),使用gcc编译该文件,运行结果文件。
3、 详细记录学习的内容和实验的整个过程,包括用到的vi命令,c程序源代码,gcc 命令,以及执行结果文件的命令等;
4、 对整个实验过程进行分析总结,给出详细步骤;
三、 实验过程
1、vi编辑器的基本使用
(1) vi工作模式及其切换
Vi存在两种模式:指令模式和输入模式。在指令模式下输入的按键将做为指令來处 理:如输入a, vi即认为是在当前位置插入字符。而在输入模式下,vi则把输入的按键当 作插入的字符来处理。指令模式切换到输入模式只需键入相应的输入命令即可(如a,A), 而要从输入模式切换到指令模式,则需在输入模式下键入ESC键,如果不晓得现在是处于 什么模式,可以多按儿次[ESC]。
(2) .常用命令
vi#在命令行中输入vi,进入vi编辑器
i#按一下i键,下端显示 一INSERT—
#插入命令,在vi中可能任意字符都有作用
Esc#退出i (插入)命令进行其它命令使用
:r f订ename#读入一个文件内容,并写入到当前编辑器中
:w newfilename#将该编辑器中的内容写入到一个新文件中
:w#在编辑的过程屮保存文件,相当于word屮的ctrl+s
: ! command#暂时离开vi到指令列模式下执行command的显示结果!例如
:! Is#在编辑过程中执行shell命令Is
: sh#进入shell命令行,执行完命令后ctrl+d退岀重新进入vim编辑继续编辑 在shell命令下,执行ctral+1完成清屏
:wq#保存文件并退出
ZZ#保存文件并退出,同上一个命令,注意大写
:q!#强制退出,不保存
: set number 或者:
set nu#使编辑中的文件显示行号
: set nonumber或者:set nonu #与上一条命令相反,不显示行号
:help i#查看插入命令帮助
u #撤消上一步操作
/Fedora#查找 Fedora 字符
: s /Fedora/Redhat#将Fedora字符替换为Redhat (只替换在光标所在的行)
dw#删除单词,dd#删除行
o#打开空白一行
vim + f订ename#进行文件最后一行进行编辑
vim +n f订ename#进入文件第n行进行编辑
: 1,. s/redhat/fedora#.号表示当前行,即光标所在行
#将第1行到当前行(?)第一次出现的redhat字符代替为fedora
: 1,. s/redhat/fedora/g#将第1行到当前行(.)所有出现的redhat字符代替为 fedora, g全局标志
: 1, $s/redhat/fedora/g#$表示最后一行
#将第1行到最后一行所有出现的redhat字符代替为fedora
:%s/redhat/fedora/g#同上一个命令
:%s/redhat\/fedora/g
#将第1行到最后一行所有出现的redhat字代替为fedora
#字,而不是字符
: f#显示文件内容,状态等等
#同ctrl+g命令
:e!#当前文件,返回到上次保存
:e f订e#切换编辑文件
:n#当编辑时有多个文件(比如vim filel file2)时切换到下一个文件,与:e file
结合使用
基本使用如下图所示:
proof#
proot#
proof# root#
oroot# vi I. txt
hello world hello Tom?I
he 1 lo hot Id hel lo Tom?
2、使用vi编写一个c程序,读取文件内容,并打印在屏幕上。
假设读取文件a. txt. I1的内容,a. txt中的内容如下图所示:
aaaaaaaaaaaaaaaaaaaa fcbbbbbbbbbbbbbbbbbbb
cccccccccccccccccccc dddddddddddddddddddd|
源程序为a.c,源程序内容如下所示:
#include stdio.h
#include stdlib.h
#include string.h
int main(void)
{
int ch = 0;
FILE *fp = NULL;
char s[100];
printfC请输入文件名:\nH);
原创力文档


文档评论(0)