因此 linux.words 文件是一个 \n
分隔的单词列表。我尝试使用 fopen 访问它,如下所示:
{
FILE* words;
words = fopen("~/usr/share/dict/words", "r");
char* dictionary[10];
if (words != NULL)
{
for (int i = 0; i < 10; i++)
{
fscanf(words, "%s", dictionary[i]);
printf("%s", dictionary[i])
}
}
}
我遇到了很多麻烦。我怀疑这可能与我需要在其中放入有关 \n
的内容有关,而且也许我没有正确打开该文件。
最佳答案
您没有为从文件中读取的单词分配空间。
char* dictionary[10];
...
// for each word
dictionary[i]= malloc(WORD_SIZE);
...
关于c - 将 linux.words (/usr/share/dict/words) 中的前 10 个单词写入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19895811/