Advertisement
yukisaw

SplitString to vector

Nov 27th, 2015
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.87 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <string.h>
  4. using namespace std;
  5.  
  6. unsigned int SplitString(const char* _src,
  7.     const char* _delim, vector<char*>& vec)
  8. {
  9.     const char* pos;
  10.     const char* last = _src;
  11.     while((pos = strstr(last, _delim)))
  12.     {
  13.         unsigned int size = pos - last;
  14.         char* res = new char[size+1];
  15.         res[size] = 0;
  16.         strncpy(res, last, size);
  17.         vec.push_back(res);
  18.         last = pos+1;
  19.     }
  20.     unsigned int size = strlen(last);
  21.     char* res = new char[size+1];
  22.     res[size] = 0;
  23.     strncpy(res, last, size);
  24.     vec.push_back(res);
  25.     return vec.size();
  26. }
  27.  
  28. int main()
  29. {
  30.     char string[] = "Hi. My name is Jimko.";
  31.     vector<char*> Words;
  32.     unsigned int size = SplitString(string, " ", Words);
  33.     if (size > 1) printf("Second word is %s\n", Words[1]);
  34.     for (int i = 0; i < size; ++i)
  35.     {
  36.         printf("%s\n", Words[i]);
  37.         delete [] Words[i];
  38.     }
  39.     cin.get();
  40.     return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement