POSIX IO的应用

POSIX IO的应用

ID:39467422

大小:75.00 KB

页数:5页

时间:2019-07-04

POSIX IO的应用_第1页
POSIX IO的应用_第2页
POSIX IO的应用_第3页
POSIX IO的应用_第4页
POSIX IO的应用_第5页
资源描述:

《POSIX IO的应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验五POSIXIO的应用班级B08512姓名张一梦学号20084051211日期2011/3/25成绩评定1.实验目的(1)掌握Linux系统中文件的创建、打开、关闭、读、写等函数的使用(2)掌握open、read、write、fcntl等系统调用的使用(3)掌握readdir、mkdir、rmdir、getcwd、get_current_dir_name等对目录文件的操作函数2.实验环境已安装Linux操作系统的微机一台3.实验内容(1)阅读程序,了解系统调用open、creat、read、write等系统的使用①

2、#include#include#include#include#include#includeintmain(){intfd;if((fd=open("example_62.c",O_CREAT

3、O_EXCL,S_IRUSR

4、S_IWUSR))==-1){//if((fd=creat("example_62.c",S_IRWXU))==-1){perror("open");//printf("o

5、pen:%switherrno:%d",strerror(errno),errno);exit(1);}else{printf("createfilesuccess");}close(fd);return0;}程序运行结果:使用open运行结果如图1所示,使用creat运行结果如图1所示5 图1open运行结果图2creat运行结果回答问题:open与creat的异同点。②#include#include#include#include

6、tl.h>#include#include/*自定义的错误处理函数*/voidmy_err(constchar*err_string,intline){fprintf(stderr,"line:%d",line);perror(err_string);exit(1);}/*自定义的读数据函数*/intmy_read(intfd){intlen;intret;inti;charread_buf[64];/*获取文件长度并保持文件读写指针在文件开始处*/if(lseek(fd,0,SE

7、EK_END)==-1){my_err("lseek",__LINE__);}if((len=lseek(fd,0,SEEK_CUR))==-1){my_err("lseek",__LINE__);}if((lseek(fd,0,SEEK_SET))==-1){5 my_err("lseek",__LINE__);}printf("len:%d",len);/*读数据*/if((ret=read(fd,read_buf,len))<0){my_err("read",__LINE__);}/*打印数据*/for(i=

8、0;i

9、O_CREAT

10、O_TRUNC,S_IRWXU))==-1){my_err("open",_

11、_LINE__);}else{printf("createfilesuccess");}/*写数据*/if(write(fd,write_buf,strlen(write_buf))!=strlen(write_buf)){my_err("write",__LINE__);}my_read(fd);/*演示文件的间隔*/printf("/*--------------------*/");if(lseek(fd,10,SEEK_END)==-1){my_err("lseek",__LINE__);}if(wri

12、te(fd,write_buf,strlen(write_buf))!=strlen(write_buf)){my_err("write",__LINE__);}my_read(fd);close(fd);return0;}程序运行结果如图3所示:5 图3运行结果回答问题:read、write、lseek等函数的作用。(2)程序设

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。