我这边有最笨的方法来处理string的split,当然char* 也可以用同样方式处理,只是效率应该是不高啦XDDDD
关于2楼的问题,应该在function内部把string copy到另外一个char []来处理应该就解决了吧?只是buffer可能要开大一点,如果是静态的话。
不一定要把string塞给strtok阿 ^^m
复制程式
vector<string> Split(char cHyphen, string InStr)
{
vector<string> vstrSplitData;
string strtmp = "";
for ( unsigned int i = 0 ; i < InStr.Length() ; i++ )
{
if ( InStr[i] != cHyphen )
{
strtmp += InStr[i];
}else{
vstrSplitData.push_back(strtmp);
strtmp = "";
}
}
if (strtmp != "") { vstrSplitData.push_back(strtmp); }; //最后一个区间
return vstrSplitData;
}