c - 关于文件处理的问题(同时写入和读取文本文件)?
问题描述
我正在尝试编写一个代码,我可以在单个循环中将文本文件中的每个字符替换为“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 编译器。
解决方案
推荐阅读
- android - 为什么在 RecyclerView findViewByPosition() 在 EditText 上返回 null
- c# - 断点不会在 Blazor Webassembly 项目、ASP.NET Core 3.1、
- ffmpeg - 'undefined symbol: __stack_chk_guard' in libopenh264.so 使用 emcc 构建 FFmpeg 时
- java - 找不到类:“xxx”Intellij (java)
- azure-language-understanding - 无法在 Azure 门户中创建新的认知服务
- azure - 我可以使用 azure vm rest api (PUT) 更改现有虚拟机中的操作系统配置文件吗?
- c# - 如何使用所有复选框在表格内循环
- c# - if 语句和 2 个数组的 C# 问题
- authentication - 授权端点如何知道用户已登录?
- python - 将带有键的字典传递给函数