Попытка сопоставить слова из пользовательского ввода со строкой из текстового файла. В основном текстовый файл представляет собой одну строку, содержащую множество слов, которая действует как «словарь». Когда этот код запущен, он выходит из строя после открытия файла. (помечено знаком ****) Как я могу изменить его, чтобы правильно сопоставлять строки из пользовательского ввода со строками из текстового файла.Как искать слова в строке в текстовом файле?
Любая помощь будет оценена, спасибо.
const int Size = 81; // 80 characters for the line + 1 for the '\0'
const int MaxNumberOfWords = 10;
int main() {
char input[81], temp[81], fin[81];
printf("Input a string\n");
fgets(input, 81, stdin);
int len = strlen(input);
char *div;
div = strtok(input, " ");
while (div != NULL) {
printf("%s\n",div);
div = strtok(NULL, " ");
ifstream inStream; // declare an input stream for my use
char theWords[ MaxNumberOfWords][ Size]; // Array to store words from input line
int wordRow = 0; // Row for the current word
char wordToLookup[ Size]; // word to lookup
bool wordWasFound = false; // flag to track whether or not word is found
char c; // stores return character after input
inStream.open("C:\\Users\\dqiao4\\Desktop\\Dev-Cpp\\dictionaryMax6.txt");
assert(! inStream.fail()); // make sure file open was OK
//*****this is where the code crashes
while (inStream >> theWords[ wordRow]) {
wordRow++;
}
for (int i=0; i<wordRow; i++) {
// See if this word matches
if (strcmp(div, theWords[ i]) == 0){
wordWasFound = true;
break; // quit looking
}
}
}
}
Пожалуйста, покажите ваши исследования усилия до времени. Сначала прочитайте страницу [Ask]. –
Но каков ваш * конкретный вопрос? Если вы ищете кого-то, чтобы написать код для вас, тогда вы пришли не туда. Попробуйте написать код самостоятельно. Если после настоящих усилий у вас все еще есть трудности, покажите свой код и задайте * конкретный * вопрос. – kaylum
SO не работает, как будто .... сделайте что-то себе сначала .. –