A string is made up of chars, so each "step" you get a char in the string.
Also, what is the point of passing the vector v to split()? It seems like it just used as a temporary to hold the result you are going to return and may as well just be local to the function. If you passed a vector with data already inside, it would end up appending to it, which makes me wonder if that's really what you wanted.
I was thinking looping a string, each step would be a string also. And when i put " ", it gave the error "forbids comparison between pointer and integer", so i put the pointer there, which apparently worked. I dont know, was kind of playing around with it.
well my intention was to mimic python's string.split() method.
actually yeah, there is no point in passing v to split() and also returning it. I was debating about using a pointer to a vector or just returning a local vector, and i kind of meshed them together as i focused on the char problem.