当前位置:   article > 正文

c 实现文本文件的复制

c 实现文本文件的复制
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
    // 检查命令行参数的数量,确保包括源文件路径和目标文件路径
    if (argc != 3) {
        printf("Usage: %s sourceFile destFile", argv[0]);
        exit(1);
    }
    
    FILE *srcFp; // 源文件指针
    FILE *desFp; // 目标文件指针
    char ch;     // 用于存储读取的字符

    // 打开源文件以供读取
    if ((srcFp = fopen(argv[1], "r")) == NULL) {
        perror("file: ");
        exit(1);
    }

    // 创建或打开目标文件以供写入
    if ((desFp = fopen(argv[2], "w")) == NULL) {
        perror("file: ");
        exit(1);
    }

    // 逐字符从源文件读取,并写入到目标文件中
    while((ch = fgetc(srcFp)) != EOF) {
        fputc(ch, desFp);
    }

    // 关闭文件流
    fclose(srcFp);
    fclose(desFp);
    return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  1. #include <stdio.h>:包含标准输入输出库,以便使用文件操作相关的函数。
  2. #include <stdlib.h>:包含标准库,以便使用 exit() 函数终止程序。
  3. int main(int argc, char *argv[]):程序的主函数,argc 是命令行参数的数量,argv[] 是命令行参数的数组。
  4. if (argc != 3) { printf("Usage: %s sourceFile destFile", argv[0]); exit(1); }:检查命令行参数的数量,确保包括源文件路径和目标文件路径,如果参数数量不正确,打印程序的用法说明并退出程序。
  5. FILE *srcFp;FILE *desFp;:定义了两个文件指针,分别用于指向源文件和目标文件。
  6. char ch;:定义了一个字符变量,用于临时存储从源文件读取的字符。
  7. if ((srcFp = fopen(argv[1], "r")) == NULL) { perror("file: "); exit(1); }:打开源文件以供读取,如果打开失败,则打印错误消息并退出程序。
  8. if ((desFp = fopen(argv[2], "w")) == NULL) { perror("file: "); exit(1); }:打开目标文件以供写入,如果打开失败,则打印错误消息并退出程序。
  9. while((ch = fgetc(srcFp)) != EOF) { fputc(ch, desFp); }:逐字符从源文件读取,并将每个字符写入目标文件,直到源文件的末尾。
  10. fclose(srcFp);fclose(desFp);:关闭源文件和目标文件,释放资源。
  11. return 0;:返回0表示程序成功执行完毕。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/302764
推荐阅读
相关标签
  

闽ICP备14008679号