//编写一个程序,将文件apple的内容拷贝到文件cherry里面去,要求用非缓冲IO函数来实现
//文件IO
/*
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
int read(int fd, void *buf, size_t count);
int write(int fd, const void *buf, size_t count);
off_t lseek(int fd, off_t offset, int whence);
int close(int fd);
*/
#include<stdio.h>
#include<unistd.h>
#include<sys/stat.h>
#include<fcntl.h>
#include <stdlib.h>
#include <stdio.h>
#include <strings.h>
int main(int argc,char *argv[])
{
int ret;
int read_fd,write_fd;
char buf[BUFSIZ];//
read_fd = open("apple.txt",O_RDONLY);
if(read_fd < 0)
{
perror("open failed");
exit(1);
}
write_fd = open("cherry.txt",O_WRONLY | O_CREAT);
if(write_fd < 0)
{
perror("open failed");
exit(1);
}
while(1)
{
bzero(buf,BUFSIZ);
//返回读到的字节数
ret = read(read_fd,buf,BUFSIZ);//读取一个文件内容
if(ret < 0)
{
perror("fail to read");
exit(1);
}
else if(ret == 0)//返回0表示已到达文件尾
break;
else
//写入到指定文件中
write(write_fd,buf,ret);//不填BUFSIZ
write(STDOUT_FILENO,buf,ret);//标准输出到屏幕
printf("\n");
}
close(read_fd);
close(write_fd);
return 0;
}
/**
/winshare/CSDN博客$ ./a.out
apple apple apple
/
编写一个程序,将一个文件的内容拷贝到另外一个文件里面(非缓冲IO函数)
最新推荐文章于 2023-12-09 14:37:21 发布