В файле содержится строка "Число 10 число 20". Первое число обрабатывается, а на второе выдает стабильно 0. При этом, если выводить только индексы первых элементов чисел в строке (6 и 16) - все работает. В чем может быть проблема?

int main()
{
setlocale(LC_CTYPE, "rus");
string line;
ifstream in("F:\\foo.txt");
if (in.is_open())
{
getline(in, line);
}
int digits = line.find_first_of("1234567890");
int digits2 = line.find_last_of("1234567890");
int number = atoi(line.c_str() + digits);
int number2 = atoi(line.c_str() + digits2);
cout << number << endl;
cout << number2 << endl;
in.close();
system("pause");
return 0;
}

"num 10 num 20 "- и расскажите, почему ваш первый метод перестал правильно работать... :) – Harry Jan 25 '20 at 04:17while (!ss.eof()) {. Учите матчасть! – Harry Jan 25 '20 at 07:53