c实现功能(11)对二进制文件的读写

#include <stdio.h>
#include <string.h>

int main(){
    //实现对二进制文件的读取
    //打开文件
    FILE *p = fopen("D:\\test\\a.wmv", "rb");
    FILE *p1 = fopen("D:\\test\\b.wmv", "wb");

    //设置字符缓冲区的大小,设置为4K有利于内存的读写
    int buf[1024 * 4] = {0};
    //读取文件内容
    while(!feof(p)){
        memset(buf, 0, sizeof (buf));
        //因为需要保证读取的字节数和写入的字节数相同,所以使用fread读取字节数的返回值
        size_t res = fread(buf, sizeof (char), sizeof (buf), p);
        //写入文件内容
        fwrite(buf, sizeof (char), res, p1);
    }

    fclose(p);
    fclose(p1);

    return 0;
}

猜你喜欢

转载自blog.csdn.net/hc1151310108/article/details/82952428