Closed. This question needs to be more focused。它当前不接受答案。
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
3年前关闭。
我开始学习C,我必须编写一个程序来计算文件中的单词数。我不知道文件的大小,那么如何在不知道文件大小的情况下声明数组?我知道没有给出
(在我的代码中,根据分配说明,我不应使用
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
3年前关闭。
我开始学习C,我必须编写一个程序来计算文件中的单词数。我不知道文件的大小,那么如何在不知道文件大小的情况下声明数组?我知道没有给出
number_of_words
,但是我该怎么办?(在我的代码中,根据分配说明,我不应使用
fgets
或EOF
)int main(int argc, char const *argv[]) {
char* word[] = {"/usr/bin/ls", "-1", NULL};
int number_of_words;
int i;
word = malloc (number_of_words * sizeof(char));
FILE* f = fopen (argv[1], "r");
fscanf(f, "%s", &word);
if ( f == NULL) {
return -1;
}
for (i = 0; word[i] != NULL; i++) {
return i;
}
}
最佳答案
对于此类问题,据我从一些编译器课程中了解到的那样,您应该动态地增长数组-分配您选择的起始大小,跟踪其大小,并在数组变满时重新分配。
我很喜欢Bing Bang的感觉,教授可能可以引导您朝正确的方向前进。我发现我的教授很有帮助。
关于c - 编写一个程序,该程序将计算c中一个文件中的单词总数。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36231148/