私は行ごとに分割する必要があります。 は、私は次のように行うために使用:C++ split string by line
int doSegment(char *sentence, int segNum)
{
assert(pSegmenter != NULL);
Logger &log = Logger::getLogger();
char delims[] = "\n";
char *line = NULL;
if (sentence != NULL)
{
line = strtok(sentence, delims);
while(line != NULL)
{
cout << line << endl;
line = strtok(NULL, delims);
}
}
else
{
log.error("....");
}
return 0;
}
I入力を "我々は一つです\我々はnyes。。" doSegmentメソッドを呼び出します。しかし、私がデバッグするとき、私は文のパラメータが "私たちは1つです。\\ nyes私たち"であり、分割が失敗したことがわかりました。誰が私にこのことが起こったのか、何をすべきか教えてくれますか?とにかくC++で文字列を分割するために使用できるものはありますか?ありがとう!
のgetline機能を発揮私は本当のC++を使用することをお勧め - STDを見て:: getlineのを –
あなたは、入力に関するいくつかの変更を加える必要があります。スプリット機能ではありません。 – halfelf
'strtok'は、渡す文字列を変更するので注意してください。 –