您的位置:首页 > 运维架构 > Linux

c语言 linux下文件i/o 实现文件的复制

2017-08-01 18:49 531 查看
#include<stdio.h>

#include<unistd.h>

#include<fcntl.h>

#include<string.h>

#include<errno.h>

#define N 64

int main(int argc,char *argv[])

{

    int fds,fdt,n;

    char buf
;

    if(argc < 3)

    {

        printf("usage : %s <src_file><dst_file>\n",argv[0]);

        return -1;

    }

    if((fds = open(argv[1],O_RDONLY))==-1)//证明没打开

    {

        fprintf(stderr,"open %s :%s\n",argv[1],strerror(errno));//标准错误流中传信息

        return -1;

    }

    if((fdt = open(argv[2],O_WRONLY|O_CREAT|O_TRUNC,0666))==-1)//证明没打开

    {

        fprintf(stderr,"open %s :%s\n",argv[2],strerror(errno));//标准错误流中传信息

        return -1;

    }

    while((n =read(fds,buf,N))>0)

    {

        write(fdt,buf,n);

    }

    close(fds);

    close(fdt);

    return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息