Идея: Я пытаюсь создать программу, которая ищет введенное пользователем слово в текстовом файле.Размер слова не указан.Я хочу найти способ динамического хранения слова пользователя, чтобы иметь возможность сравнить его с другими словами из файла.
Вся программа огромна, поэтому я прикрепляю только часть, относящуюся к моим запросам.
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <cstdlib>
#include <fstream>
#include <cstdlib>
#include <vector>
#include <string>
void vectorfill(vector<char>& newword) //filling char vector
{
char input;
scanf_s("%c", &input);
while (input != -1)
{
newword.push_back(input);
scanf_s("%c", &input);
}
}
int main (void)
{
vector<char> word;
printf("Enter a word: (-1 to finish)");
vectorfill(word);
}
Вопросы:
1) Является ли char vector лучшей идеей в этом случае?
2) (Если у нас все хорошо с вектором символов) Как заставить компилятор понять, что пользователь закончил писать свое слово?Можем ли мы попросить его поставить (-1) в конце?Есть ли лучший способ отметить конец ввода?