/*
 * Tokenizes a command line argument to a vector and then prints results.
 *     ./a.out "this will be tokenized."
 *
 * Niek Sanders
 * http://www.cis.rit.edu/~njs8030/
 *
 */
#include <algorithm>
#include <iostream>
#include <iterator>
#include <sstream>
#include <string>
#include <vector>

int main( int argc, char* argv[] ) {

    typedef std::istream_iterator<std::string>      is_it;
    typedef std::ostream_iterator<std::string,char> os_it;

    std::istringstream ss( argc > 1 ? argv[1] : "" );
    std::vector<std::string> tokens( (is_it(ss)), is_it() );
    std::copy( tokens.begin(), tokens.end(), os_it(std::cout, "\n") );

    return 0;
}
