C++ Split string into a vector
I haven't attempted to measure the timing of this, in part because I don't know how you're planning to use it, but here are some ideas for improving your code.

Consider returning something useful from functions

Your Split function doesn't return anything, which isn't an error, but it's an odd design.  I'd expect it to be declared like this instead:

std::vector&lt;std::string&gt; Split(const std::string&amp; subject)


Understand sizeof

The sizeof operator is defined as always returning 1 for sizeof(char), so having that expression as part of your code probably isn't useful.

Use "range for" to simplify your code

The code to print the vector could be made much simpler and shorter by using a "range for" that was introduced in C++11:

for(const auto &amp;item : container) {
    std::cout &lt;&lt; item &lt;&lt; "!\n";
}


Use standard library algorithms

I'd be inclined to write this using C++ rather than C functions.  One way to do this is to use std::copy and std::stringstream:

std::vector&lt;std::string&gt; Split(const std::string&amp; subject)
{
    std::istringstream ss{subject};
    using StrIt = std::istream_iterator&lt;std::string&gt;;
    std::vector&lt;std::string&gt; container{StrIt{ss}, StrIt{}};
    return container;
}


I've also been playing with std::sregex_token_iterator lately.  Here's how that might look:

std::vector&lt;std::string&gt; Split(const std::string&amp; subject) {
    static const std::regex re{"\\s+"};
    std::vector&lt;std::string&gt; container{
        std::sregex_token_iterator(subject.begin(), subject.end(), re, -1), 
        std::sregex_token_iterator()
    };
    return container;
}