ここには、スペースで区切られた単語の文字列を受け取り、各単語を配列に追加する関数があります。私は "libC++ abi.dylib:タイプstd :: out_of_range:basic_stringのキャッチされていない例外で終了する"というエラーが出ています。私はエラーが何であるかを見つけることができない。libC++ abi.dylib:タイプstd :: out_of_rangeのキャッチされていない例外で終了:basic_stringエラー?
void lineParser(string line, string words[])
{
string word = "";
int array_index = 0;
int number_of_words = 1;
int string_index = 0;
while (string_index < line.length())
{
if (line.substr(string_index,1) != " ")
{
int j = string_index;
while (line.substr(j,1) != " ")
{
word += line.substr(j,1);
j++;
}
words[array_index] = word;
array_index++;
word = "";
number_of_words++;
string_index = j;
}
else
{
string_index++;
}
}
}
std :: vectorのようなサイズ変更可能なコンテナへの参照は、配列ポインタの代わりに関数に渡す必要があります。 – skearney