c语言编写一个函数,称为fun函数,它可以将指定源文件中的内容复制到指定目标文件中,在复制过程中,如果复制成功,则fun函数返回值为1,如果复制失败,则返回值为0。在复制过程中,将复制的内容输出到终端。函数中源文件的名称放在变量sfname中,目标文件的名称放在变量tfname中。请不要添加行或删除行,或修改程序的结构。
时间: 2024-02-23 22:59:19 浏览: 60
c语言库函数实现文件复制
4星 · 用户满意度95%
下面是符合要求的 fun 函数的代码:
```c
#include <stdio.h>
int fun(char *sfname, char *tfname) {
FILE *sfile, *tfile;
char ch;
if ((sfile = fopen(sfname, "r")) == NULL) {
printf("Failed to open source file %s\n", sfname);
return 0;
}
if ((tfile = fopen(tfname, "w")) == NULL) {
printf("Failed to open target file %s\n", tfname);
fclose(sfile);
return 0;
}
while ((ch = getc(sfile)) != EOF) {
if (putc(ch, tfile) == EOF) {
printf("Failed to write to target file %s\n", tfname);
fclose(sfile);
fclose(tfile);
return 0;
}
putchar(ch);
}
fclose(sfile);
fclose(tfile);
return 1;
}
```
这个函数首先尝试打开源文件,如果打开失败,则输出错误信息并返回 0。如果成功打开源文件,则尝试打开目标文件,如果打开失败,则输出错误信息并返回 0。如果两个文件都成功打开,则开始复制源文件的内容到目标文件中,并将复制的内容输出到终端。如果复制过程中出现错误,则输出错误信息并返回 0。如果复制成功,则关闭两个文件并返回 1。
阅读全文