自分で作成した文字列分割関数mysplit()
950 ワード
strtok()関数でカプセル化された文字列分割関数mysplit()sourceStrをソース文字列splitSymbolを区切り記号strArrayを分割した文字列としてvector形式で返す
入力:1,2 2,3 45,6 7出力:1,2,3 45,6 7 1 2 3 45 6
#include
#include
#include
#include
using namespace std;
void mysplict(string sourceStr, char *splitSymbol, vector &strArray)
{
string temp;
char *str = new char[sourceStr.size()];
sourceStr.copy(str, sourceStr.size(), 0);
*(str + sourceStr.size()) = '\0'; //
char *p2 = strtok(str, splitSymbol);
while (p2 != NULL)
{
//cout << p2 << endl;
temp = p2;
cout << temp << endl;
strArray.push_back(temp);
p2 = strtok(NULL, splitSymbol);
}
}
int main()
{
string temp;
vector number;
while (getline(cin, temp)) //while (cin>> temp)
{
cout << temp<
入力:1,2 2,3 45,6 7出力:1,2,3 45,6 7 1 2 3 45 6