#include <string>
#include <sstream>
#include <iostream>
using namespace std;
int main()
{
string s = "Ala ma kota.";
stringstream ss(s);
string sink;
while(ss >> sink);
ss.seekg(0);
ss >> sink;
cout << sink << '\n';
return 0;
}
Odpowiedź: kota.
https://wandbox.org/permlink/svtwZuiUKWB8hDI8
Nie rozumiem, jeśli dobrze czytam dokumentację to seekg(0)
winno przewijać do samego początku? A więc na Ala
a nie kota
.
Natknąłem się na to podczas pisania programu / żartu na forum, mianowicie https://4programmers.net/Forum/C_i_C++/317550-oddzielanie_slow_w_stringu_i_przypisywanie_ich_do_tablicy?p=1536160#id1536160
Działa dla ponownej inicjalizacji: ss = std::stringstream(zdanie);
, nie działa dla ss.seekg(0)
.