std::string s = "aaa bbb";
std::istringstream ss(s);
std::string token;
if (ss>>token) // or: while(ss>>token) for _all_ tokens
{
std::cout << "first token only: " << token << std::endl;
}
В качестве альтернативы, с контейнером и использованием <algorithm>
std::string s = "aaa bbb";
std::istringstream ss(s);
std::vector<std::string> elements;
std::copy(std::istream_iterator<std::string>(ss),
std::istream_iterator<std::string>(),
std::back_inserter(elements));
// elements now contains the whitespace delimited tokens
Включает в себя:
#include <sstream> // for ostringstream/istringstream/stringstream
#include <algorithm> // for copy
#include <iterator> // for istream_iterator/back_inserter