안녕하세요 저는 텍스트 파일의 모든 단어를 읽고 각각을 배열 (WordA [])에 저장하는 함수를 만들고 있습니다.텍스트 파일을 초기화하고 배열에 저장하십시오.
#include <stdio.h>
#include <string.h>
#include "dictionary.h"
void
InitializeWords(char *WordA[])
{
char word[31];
int i;
FILE *filep;
filep = fopen("bacon.txt", "r");
if (fp != NULL) { // means that file exists
for (i=0; i<NWORDS; i++){
fscanf(filep, "%s", word);
strcpy(WordA[i], word);
}
fclose(filep);
}
}
WordA[]
여기에 초기화됩니다 단어가 내 프로그램의 후반부에 사용됩니다 여기에 내 코드입니다. 나는 내 오류가 어디서 추적되었는지 분명히 내가 strcpy (WordA[i], word)
을 제거하면 단어가 제대로 인쇄되거나 읽혀지는 것 같습니다.
InitializeWords
는 메인 함수에서 호출됩니다 내가 그나마
int
main()
{
char *WordA[NWORDS]; // a 1D array of character pointers (addresses)
InitializeWords(WordA);
StartGame(WordA); // starts the program game
return 0;
}
배열에서 단어를 복사에서 잘못 이해. 도와주세요! 고마워요!
또한 만들려고하시기 바랍니다 [, 최소를 완료하고 검증 가능한 예] (http://stackoverflow.com/help :
프로그램의 끝에서 당신은 다음과 같이 할당 된 메모리를 해제해야/mcve) 우리를 보여주십시오. 이 'InitializeWords' 함수를 호출하는 방법과 전달할 항목을 포함합니다. –
'WordA'의 정의는 무엇입니까? –
"Somme programmer dude"의 코멘트를 읽고 그가 묻는 것을하십시오. 그렇지 않으면 우리가 도울 수 없습니다. –