I/O中使用fwrite和fread完成两个文件的拷贝
时间: 2024-02-06 22:11:55 浏览: 19
好的,下面是使用fwrite和fread完成两个文件拷贝的示例代码:
```c
#include <stdio.h>
#define BUFFER_SIZE 1024
int main() {
FILE *src_file = fopen("src_file.txt", "rb");
FILE *dst_file = fopen("dst_file.txt", "wb");
if (src_file == NULL || dst_file == NULL) {
printf("Failed to open file.\n");
return 1;
}
char buffer[BUFFER_SIZE];
size_t bytes_read;
while ((bytes_read = fread(buffer, 1, BUFFER_SIZE, src_file)) > 0) {
fwrite(buffer, 1, bytes_read, dst_file);
}
fclose(src_file);
fclose(dst_file);
return 0;
}
```
这段代码打开了一个名为src_file.txt的文件作为源文件,另外创建了一个名为dst_file.txt的文件作为目标文件。接着,代码使用fread函数从源文件读取数据到缓冲区中,再使用fwrite函数将缓冲区中的数据写入到目标文件中。循环执行这个过程,直到所有数据都被读取并写入到目标文件中。最后,关闭文件并返回0表示程序执行成功。