gpt4 book ai didi

c - 从文件中读取字符并将它们存储在 C 中的变量中

转载 作者:行者123 更新时间:2023-12-01 15:05:44 27 4
gpt4 key购买 nike

我正在尝试从文件中逐字符读取并将字符存储在变量中。

只需要文件第一行的内容,所以我使用 \nEOF 停止阅读。还需要存储 SPACE

这是我的程序:

#include<stdio.h>
#include<string.h>

void main()
{
FILE *fp;
char ch;
char txt[30];
int len;
fp=fopen("~/hello.txt","r");
ch=fgetc(fp);
while(ch != EOF || ch!="\n")
{
txt[len]=ch;
len++;
ch=fgetc(fp);
}
puts(txt);
}

但是我在编译时收到警告,比如指针和整数之间的比较。当我运行它时,我遇到了段错误。

最佳答案

您正在与错误的事物进行比较。尝试:

ch != '\n'
^ ^

此外,正如在其他答案中发现的那样,您正在使用 len 而不对其进行初始化。

最后,您确实意识到 fgets 也可以做到这一点。您可以将其重写为:

if (fgets(txt, sizeof txt, fp))
...

关于c - 从文件中读取字符并将它们存储在 C 中的变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15883743/

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