私は C++ の初心者で、このコードのどこかで小さな間違いを犯したと思います。私はこれまでのところそれを見つけることができませんでした。あなたが私を助けてくれることを願っています、そしてそれがどのように/どこで/なぜ間違っているのか教えてください? よろしくお願いします。
コード:
std::vector<std::string> spliter(const std::string& s, char delimiter)
{
std::vector<std::string> result;
size_t start = 0;
for(std::size_t i = 0; i != std::string::npos; i = s.find(delimiter,start))
{
result.push_back( s.substr(start,i-start) );
start = i+1;
}
iprintf("\x1b[2J");
printf("\x1b[4;0HDone Splitting Text.");
swiWaitForVBlank();
return result;
}
与えられたパラメータ:
s = "$ 00-000 SS ''Prologue'' CF N00-001 V 1 MP 20"
delimiter = ' '
(スペース)
期待される結果:
result[0] = $
result[1] = 00-000
result[2] = SS
etc.
現在の間違った結果:
result[0] =
result[1] =
result[2] = 00-000
etc.
どんな助けでも大歓迎です!