Я чего то не совсем понял, но что мешает использовать тогда Qt-шный классы QString ?
там уже весь нужный тебе функционал есть, о чем уже говорили
lastIndexOf(), который сам за тебя всю работу и сделает, почитай немного асситент.
твой код можно ужать буквально до пары строк
что то вроде
C++ (Qt)
#include <QString>
#include <QFile>
int func(QString path)
{
int i;
QString str;
QFile f(path);
if (!f.exists()) return 0;
f.open(QIODevice::ReadOnly);
while (!f.atEnd())
{
str = f.readLine();
if (f.contains("IPADDR=")
{
i = str.right(3).toInt();
switch(i)
{
case 250:
return 1;
case 251:
return 2;
case 252:
//--------- ну и так все варианты :) ------ можно еще попробовать вообще возвращать
//--------- 250-(250+1) и возвращать результат вычитания )))
default:
qWarning("хрень :)");
}
}
}
// нехрена мы не нашли ((
return 0;
}
вот чего то такое )
эта функция тебе вернет чего те надо
p.s. может кто из гуру написать красивее? ) хочу посмотреть наиболее оптимальный вариант решения