Есть строка такого типа
mainw=100,100,0,0
Она передаётся функции:
QString kmmsConfig::getBlockUntil(QString s, QChar div, int rep_div, QChar end)
{
QString st;
QChar ch = 0;
unsigned int n = 0;
int rep = 0;
bool f=false;
while (n <= s.length())
{
ch = s [ n ];
if (ch == div) if (rep == rep_div) if (ch==end) break;
if (ch == '\n') break;
if (ch == div ) if ( rep == rep_div) f = true;
else if (ch == div ) if ( rep != rep_div) rep++;
if (f)
{
st+=ch;
n++;
}
}
if (rep_div != 0) st = st.remove(0,1);
return st;
}
Вызывается так getBlockUntil(stroka,'=',1,','), т.е. выбирается подстрока между '=' и ','.
но почему то на этом всё зависает, что странно, т.к. на мой взгляд предусмотренны все варианты исхода, вот только оно зацикливается, может кто подскажет что не так??
P/S про череду ифов в if (ch == div) if (rep == rep_div) if (ch==end) break; плз не спрашивайте, просто добавлял параметры по одному а переписать всё никак.. :))
Заранее спасибо!!!
Ответ на:
комментарий
от hbee
Ответ на:
комментарий
от cyclon
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум g++ expects argument (2013)
- Форум Баг или фича? (2014)
- Форум SMTP клиент - разрывы в тексте письма. (2013)
- Форум Забавное поведение при отображении QAbstractItemModel на QSortFilterProxyModel (2013)
- Форум не получается в Xlib (2023)
- Форум Порт не освобождается после закрытия приложения (2017)
- Форум язычок вот написал (2020)
- Форум Названия для размеров часто используемых буферов (2024)
- Форум Какая-то фигня с виртуальными методами (2014)
- Форум Помощь в gluLookAt (2013)