#include <iostream>
#include <string>
#include<sstream>
#include<algorithm>
#include<iterator>
#include<cstring>
 
int main(int argc, char** argv)
{
    std::string text = "token  test\tstring";
 
 
    std::vector<std::string> strs;
 
   std::istringstream iss(text);
 
   std::copy(std::istream_iterator<std::string>(iss),
         std::istream_iterator<std::string>(),
         std::back_inserter<std::vector<std::string> >(strs));
 
   char **word = new char*[strs.size()];
   for(size_t i=0;i<strs.size();++i)
   {
       word[i] = new char[strs[i].size()+1];
       strcpy(word[i],strs[i].c_str());
   }     
 
   for(size_t i=0;i<strs.size();++i)
   {
      std::cout<<word[i]<<std::endl;
   }
 
    /* Clean up*/
    for(int i = 0; i < strs.size(); ++i) {
    delete [] word[i];
   }
   delete [] word;
}
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZTxzc3RyZWFtPgojaW5jbHVkZTxhbGdvcml0aG0+CiNpbmNsdWRlPGl0ZXJhdG9yPgojaW5jbHVkZTxjc3RyaW5nPgoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQp7CiAgICBzdGQ6OnN0cmluZyB0ZXh0ID0gInRva2VuICB0ZXN0XHRzdHJpbmciOwoKICAgIAogICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHN0cnM7CgogICBzdGQ6OmlzdHJpbmdzdHJlYW0gaXNzKHRleHQpOwogICAKICAgc3RkOjpjb3B5KHN0ZDo6aXN0cmVhbV9pdGVyYXRvcjxzdGQ6OnN0cmluZz4oaXNzKSwKICAgICAgICAgc3RkOjppc3RyZWFtX2l0ZXJhdG9yPHN0ZDo6c3RyaW5nPigpLAogICAgICAgICBzdGQ6OmJhY2tfaW5zZXJ0ZXI8c3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+ID4oc3RycykpOwogICAKICAgY2hhciAqKndvcmQgPSBuZXcgY2hhcipbc3Rycy5zaXplKCldOwogICBmb3Ioc2l6ZV90IGk9MDtpPHN0cnMuc2l6ZSgpOysraSkKICAgewogICAgICAgd29yZFtpXSA9IG5ldyBjaGFyW3N0cnNbaV0uc2l6ZSgpKzFdOwogICAgICAgc3RyY3B5KHdvcmRbaV0sc3Ryc1tpXS5jX3N0cigpKTsKICAgfSAgICAgCiAgICAKICAgZm9yKHNpemVfdCBpPTA7aTxzdHJzLnNpemUoKTsrK2kpCiAgIHsKICAgICAgc3RkOjpjb3V0PDx3b3JkW2ldPDxzdGQ6OmVuZGw7CiAgIH0KICAgIAogICAgLyogQ2xlYW4gdXAqLwogICAgZm9yKGludCBpID0gMDsgaSA8IHN0cnMuc2l6ZSgpOyArK2kpIHsKICAgIGRlbGV0ZSBbXSB3b3JkW2ldOwogICB9CiAgIGRlbGV0ZSBbXSB3b3JkOwp9