gpt4 book ai didi

c - 如何将文本文件的内容保存到二维数组中?

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

我创建了一个名为“thetext.txt”的文本文件,它有一个引用。报价是:“如果地球上没有数学家,对真正的物理学来说会更好。——丹尼尔·伯努利”现在,我想将其保存在二维数组 [200][[20] 中,以计算单词数。它只打印字符串(它会)。

我做了什么:

void countwords(char word2[B][N]){
FILE *read;
char c;
int i, j;
int words=0, x=0;
if((read=fopen("thetext.txt", "rt"))==NULL){
printf("Cannot open File.");
return ;
}
if(fgets(word2, sizeof(word2), read) != NULL){
printf("%s",word2);
}
fclose(read);
return ;
}

最佳答案

在 C 中,当您将数组传递给函数时,它会将其作为指针传递。我假设您执行了 #define B 200#define N 20 来编译它。

您的 fgets 调用相当于:

if(fgets(word2,sizeof(char**), read)!= NULL)

如果您想读取更多数据,请增加该大小。

另外,你的数组对我来说似乎有一个奇怪的大小,因为 20 个字符仍然不足以容纳该文本,也许你的意思是 word2[N][B]? 20 行,每行可以容纳 199 个字符?

if(fgets(word2[0], sizeof(char)*B, read)!= NULL)

关于c - 如何将文本文件的内容保存到二维数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49781924/

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