使用read和write函数,编写一个程序,实现cp函数的基本功能
/*
使用read和write函数,编写一个程序,实现cp函数的基本功能*/
#include <stdio.h>
#include <fcntl.h>
#include <stdio.h>
#define PERMS 0666
#define DUMMY 0
#define MAXSIZE 1024
int main(int argc, char *argv[])
{
int sourcefileID,targetfileID;
int readNO=0;
char WRBuf[MAXSIZE];
if(argc!=3){ printf("run error\n"); return 1;}if((sourcefileID=open(*(argv+1),O_RDONLY,DUMMY))==-1){ printf("Source file open error!"); return 2;}if((targetfileID=open(*(argv+2),O_WRONLY|O_CREAT,PERMS))==1){ printf("Target file open error!\n"); return 3;}while((readNO=read(sourcefileID,WRBuf,MAXSIZE))>0)//如果读出来的数据大于0 if(write(targetfileID,WRBuf,readNO)!=readNO)//如果写入的数据和读出的数据不同 { printf("Target file write error!\n");//写数据错误 return 4; }close(sourcefileID);close(targetfileID);return 0;
}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。