gpt4 book ai didi

c - 如何读取C中的行

转载 作者:行者123 更新时间:2023-11-30 21:37:32 26 4
gpt4 key购买 nike

我想到达文件(*.txt)中的行

我的文件包括三种类型。首先是行数-1,其次是单词和数字,第三是最后一行的查询。

例如;

5

狗3

学校2

苹果2

汽车1

类别 4

勺子食物心游戏石笔

FILE *fp;
char arr[10][5];
char times[10];
int numberOfLines;
char queryTemp[1000];
fp = fopen("deneme.txt","r");
fscanf(fp,"%d",&numberOfLines);
for(int i=0;i<10;i++)
{
fscanf(fp,"%s %d",arr[i],times[i]);
}
fscanf(fp,"%s",querySubmissionsTemp);

我哪里错了?我怎样才能做到这一点?

最佳答案

您正在输入 numberOfLines,但无论输入多少,您都会输入 10 行。

fscanf(fp,"%d",&numberOfLines);
for(int i=0;i<numberOfLines;i++)

此外,我没有看到 querySubmissionsTemp 的声明。

fscanf(fp,"%s",queryTemp);

合并 BLUEPIXY 的评论:

char arr[10][5];

char[5] 很小。您需要在字符串末尾包含 \0 空终止符的空格。

char times[10]; 应该是 int times[10];

fscanf(fp,"%s %d",arr[i],times[i]); 应该是 fscanf(fp,"%4s %d",arr[ i], ×[i]); (4 是小尺寸,已经指出)

fscanf(fp,"%s",queryTemp);

这读的是一个词。查看fgets

关于c - 如何读取C中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30536741/

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