テキストファイルをプレーンCの1次元配列に読み込む方法はありますか?私が試みたものは次のとおりです(私はハングマンを書いています):テキストファイルをプレーンCの配列に読み込む
int main() {
printf("Welcome to hangman!");
char buffer[81];
FILE *dictionary;
int random_num;
int i;
char word_array[80368];
srand (time(NULL));
random_num = rand() % 80368 + 1;
dictionary = fopen("dictionary.txt", "r");
while (fgets(buffer, 80, dictionary) != NULL){
printf(buffer); //just to make sure the code worked;
for (i = 1; i < 80368; i++) {
word_array[i] = *buffer;
}
}
printf("%s, \n", word_array[random_num]);
return 0;
}
何が間違っていますか?
Word_arrayは、charではなくchar *の配列である必要があります。バッファを動的に割り当てる必要があります(単一のバッファは各fgetsに上書きされ、word_arrayの割り当てはすべて同じになります)。 – mpez0