首页 > 解决方案 > 关于文件处理的问题(同时写入和读取文本文件)?

问题描述

我正在尝试编写一个代码,我可以在单个循环中将文本文件中的每个字符替换为“x”。我无法获得所需的输出,并且还给出 ch!==EOF 条件会导致无限循环。

#include<stdio.h>

void main()
{
    FILE *fp;
    fp=fopen("text.txt","r+");
    char ch;
    int i=0;

    while(1)
    {
        if(i!=5)
        {
            ch=fgetc(fp);
            fseek(fp,-1,SEEK_CUR);
            fputc('x',fp);
            printf("%c",ch);
            i++;
        }
        else
            break;
    }
    fclose(fp);
}

预期输出 :你好
实际结果 :Heeee

给定文件包含文本“Hello”
使用 GCC 编译器。

标签: cfiletext

解决方案


推荐阅读