Прежде всего, решение этого вопроса должно быть очень эффективным.
Моя проблема заключается в том, что мне нужно сравнить определенные части двух APT_String
с (тип DataStage).А именно, строки - это фамилии, которые содержат пробел, такой как «Коричневый мозг».Однако имена находятся в 30-байтовом поле, а оставшееся пространство заполнено пробелами.
Короче говоря, мне нужно найти первый экземпляр двух последовательных пробелов (чтобы обозначить конец полезной фамилии).Мое решение -
bool foundit = false;
for (int ind = 0; ind<=q_array[i].LAST_NAME.length() && !foundit; ind++) {
if (q_array[i].LAST_NAME[ind] == ' ' && q_array[i].LAST_NAME[ind+1] == ' ') {
cout<<"two spaces in a row at char " << ind << endl;
foundit = true;
}
}
К сожалению, APT_String не появляетсячтобы найти (), или я бы использовал это.У кого-нибудь есть лучший или более эффективный способ сделать это?