Я делаю программу, которая читает целые числа из текстового файла и показывает их на экране. Я хотел использовать stringstream, но я не уверен, как это работает.
Текстовый файл содержит также слова, например:
She bought a tshirt for 25 shoes for 50 and a book for 5
На экране должны быть видны только 25, 50 и 5. Теперь вывод, который я вижу, просто 0. Мой код:
#include <iostream>
#include "std_lib_facilities.h"
using namespace std;
string file = "file.txt";
void f() {
vector<int> num;
ifstream ist {file};
if (!ist) error("can't open input file", file);
string textline;
while (getline(ist, textline)) {
istringstream text(textline);
int integer;
text >> integer;
num.push_back(integer);
}
for (int i = 0; i < num.size(); i++) {
cout << num[i] << endl;
}
}
int main()
{
f();
return 0;
}
Возможно ли сделать это по-другому? Может ли кто-нибудь объяснить мне это?