使用 C 语言标准库 <stdio.h> 中的 FILE 指针指向原文件和目标文件,然后调用函数 fgetc/fputc 或 fread/fwrite 实现从原文件到目标文件的字节复制。
采用 fgetc/fputc 函数进行文件复制的的核心代码
int val = 0;
while ((val = fgetc(fpbr)) != EOF)
fputc(val, fpbw);
注:
1)EOF宏,表示文件尾(End Of File),定义在 <stdio.h> 头文件中,其值为 -1;
2)虽然 fgetc/fputc 函数的功能是从文件流中读/写一个字符,实际上字符使用的是 int 整型,不是 char 类型。如果使用 char 类型,可能会导致文件复制不全;
采用 fread/fwrite 函数进行文件复制的核心代码
示例代码一
char ch;
while (fread(&ch, sizeof(char), 1, fpbr) != 0)
fwrite(&ch, sizeof(char), 1, fpbw);
示例代码二
size_t len = 0;
char buffer[BUFSIZ] = {'