gpt4 book ai didi

c - 文件输出不正确

转载 作者:行者123 更新时间:2023-11-30 19:07:27 25 4
gpt4 key购买 nike

我正在尝试将一些数据输入到文件中,然后在控制台上读取并打印它。

这是我的代码:

  fp=fopen("user1","w+");
char line[1000];
char *c;
//write on file

while(1)
{
fgets(line,sizeof(line),stdin);
if(strcmp(line,":wq\n")==0) //input ends when user enters :wq
break;
else
fputs(line,fp);
}
//read from file
fflush(stdin);

while(1)
{
c=fgetc(fp);
if(c==EOF)
break;
else
printf("%ch",c);
}

我输入的数据为

bjsa

:wq

输出:

 h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h  h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h h 

问题是什么?

最佳答案

我发现两个问题

1) 您的 fgetc 分配给一个字符点。那是错的。它应该是一个整数

2)写入文件后,应关闭它,然后再打开它进行读取

类似于:

  fp=fopen("user1","w+");
char line[1000];
int c; // notice ......

//write on file
while(1)
{
fgets(line,sizeof(line),stdin);
if(strcmp(line,":wq\n")==0) //input ends when user enters :wq
break;
fputs(line,fp);
}
fclose(fp);


//read from file
fp=fopen("user1","r");
while(1)
{
c=fgetc(fp);
if(c==EOF)
break;
printf("%ch",c);
}
fclose(fp);

关于c - 文件输出不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46814809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com