Подскажите пожалуйста. У меня некорректно работает метод .find() для string

Пользователь вводит строку sentence. Программа ищет самое длинное слово max. Мне нужно найти индекс первого символа этого слова max. Я воспользовалась sentence.find(max) , но в терминале выводится 0.

#include <iostream> 
#include <string>
#include <sstream>
int main () {
std::cout << "Введите предложение: ";
std::string sentence, max;
std::getline(std::cin, sentence);
///// максимальный элемент
std::stringstream ss(sentence);
while (ss >> sentence) {
if (sentence.size()> max.size()) {
    max=sentence;
}
}
std::cout << max << std::endl;
int len = max.length();
//////////// индекс первого символа 
size_t i;
i= sentence.find(max);
std::cout << i;
}

введите сюда описание изображения


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

Автор решения: Igor
while (ss >> word) {
  if (word.size() > max.size()) {
    max = word;   
  }
}
→ Ссылка