永发信息网

编写一个文件复制的C语言程序: 分别使用文件的系统调用read(fd, buf, nbytes), write(fd, buf, nbytes)和

答案:1  悬赏:50  手机版
解决时间 2021-01-14 02:51
  • 提问者网友:黑米和小志
  • 2021-01-13 20:23
编写一个文件复制的C语言程序: 分别使用文件的系统调用read(fd, buf, nbytes), write(fd, buf, nbytes)和
最佳答案
  • 五星知识达人网友:摆渡翁
  • 2021-01-13 20:59
就是一个文件的读写问题啊。

#include

int main(int argc, char **argv)
{
int rfd = -1, wfd = -1;
char buf[1024] = {0};
int n;

if(argc != 3){
printf("Usage: ./test infile outfile\n");
return -1;
}

rfd = open(argv[1], O_RDONLY);
wfd = open(argv[2], O_WRONLY);

while((n = read(rfd, buf, 1024)) > 0)
write(wfd, buf, n);

return 0;
}

其中的错误检测自己添加;

测试:# ./test infile outfile
./test是你编译生成的,infile是输入文件,outfile是要写入的文件
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯