У меня есть stringstream
и нужно выяснить, заканчивается ли она определенным словом или нет. Как вы перебираете stringstream
и выбираете последнюю строку?
Это школьное упражнение, в котором вам не разрешено использовать итераторы или любую другую магию.
Строковый поток похож на snprintf на C, поэтому вы фактически конвертируете его в строку с помощью .str()
. Это базовый пример: Чтобы получить все миры, вам придется разделить на пространство и поместить его в массив или вектор или что-то еще.
#include <iostream>
#include <string>
#include <sstream>
using std::cout;
using std::endl;
int main()
{
std::stringstream ss;
ss << "self" << ' ' << "world" << ' ' << "bacon";
std::string str(ss.str());
std::string buf;
for(unsigned i = 0; i < str.length(); i++) {
buf += str[i];
if(str[i] == ' ') {
buf = "";
}
}
cout << buf << endl;
return 0;
}