Как посчитать количество букв в словах на С++?

С консоли пользователь вводит строку или несколько строк и они записываются в файл. А дальше из этого файла нужно выбрать слова, в которых количество букв "а" будет максимально. И вывести на экран это слово.

Вопрос в том, как считывать слова и при этом считать в них буквы. Если записывать из файла в char получается сплошная строка без пробелов.

Вот код:

string word[256];
for (int i = 0; i < sizeof(word) / sizeof(string); i++) {
    file >> word[i];
}
file.close();
int count = 0, count_max = 0;
char a[256];
for (int i = 0; i < sizeof(word) / sizeof(string); i++) {
    strcpy_s(a, word[i].c_str());
    if (a[i] == 'а') {
        count++;
    }
}

Ответы (1 шт):

Автор решения: Valvea

Записывай в класс string и вызывай соответствующие методы Использование std::getline() Чтобы извлечь полную строку из входного потока данных (вместе с пробелами), используйте функцию std::getline(). Она принимает два параметра: первый — std::cin, второй — переменная типа string.

→ Ссылка