本篇博客是本人根据百度加上自己的修改得到的,可以算转载。
Split函数是C++没有的,需要自己搞,网上给出的代码说要用strtok,但是vs2017不支持strtok,只支持strtok_s......
所以这就很难受了,网上也有strtok_s的使用方法,这里我给出我整理修改所得的一个分割字符串函数,以便不时之需。
vector<string> vtr;//储存分割的字符串 vector<string>::iterator it;//迭代器 void split(string str) { vtr.clear(); char*next_token = nullptr; char *ch = new char[str.size() + 1]; char *cr; strcpy_s(ch, str.size() + 1, str.c_str()); cr = strtok_s(ch, " ", &next_token);//空格作为分隔符 while (cr != nullptr) { vtr.push_back(cr); cr = strtok_s(nullptr, " ", &next_token);//第一次调用后再次调用要将字符串参数置空 } }