C语言实现所有格式文件复制

#include <stdio.h>

int main(int argc, char* argv[])
{
    if(argc != 3)
    {
        printf("请输入正确的格式:\n%s 源文件名 新文件名\n", argv[0]);
        return 1;
    }
    FILE* pf = fopen(argv[1], "rd");
    FILE* cp = fopen(argv[2], "wd");
    if (pf == NULL || cp == NULL)
    {
        printf("文件打开失败");
        return 2;
    }
    char temp[1000000];//这个是文件读取缓存,大小可以随意设置
    int a = 0;//返回读取到的字符数
    while((a = fread(temp, sizeof(char), 1000000, pf)) != 0)//此处的第三个参数是一次读取多少个字节不能大于前面的缓存
    {
        fwrite(temp, sizeof(char), a, cp);//写读到的a个字节到新文件
    }
    return 0;
}
忘记关闭文件了

fclose(pf);

fclose(wd);


你可能感兴趣的:(文件复制)