#include <iostream>
#include <string>
#include <sstream>
#include <iterator>
#include <vector>
template <typename Out>
void split(const std::string &s, char delimiter, Out result) {
std::istringstream iss(s);
std::string item;
while (std::getline(iss, item, delimiter)) {
*result++ = item;
}
}
std::vector<std::string> split(const std::string &s, char delimiter) {
std::vector<std::string> tokens;
split(s, delimiter, std::back_inserter(tokens));
return tokens;
}
int main()
{
std::string s = "c c++ java php python go rust swift";
std::vector<std::string> tokens = split(s, ' ');
for (std::string s : tokens) {
std::cout << s << std::endl;
}
}
/*
run:
c
c++
java
php
python
go
rust
swift
*/