Не происходит считывание с файла язык C++
При первом цикле считывание происходит без проблем, после проверки if (s != '\n') запускается следующий цикл, но в нем уже чтение не продолжается. Какой последний символ был считан в первом цикле, такой и остался. Подскажите пожалуйста, почему так происходит и как это можно исправить))
bool InpM(const char* name_in, int& pos, StrL& M)
{
char s;
ifstream f_in;
f_in.open(name_in, ios::in);
if (!(f_in.is_open())) std::cout << "Ошибка открытия входного файла!";
else
{
f_in.unsetf(ios::skipws);
f_in.seekg(pos);
unsigned i = 0;
if (f_in.eof()) return 0;
else
{
while (1)
{
f_in >> s;
if (s == '\n') break;
if (f_in.eof())
{
M.L = i;
return 0;
}
else
{
M.A[i] = s;
i++;
if (i >= ver)break;
}
}
if (s != '\n')
{
while (s != '\n' && !f_in.eof())
{
f_in >> s;
}
}
M.L = i;
pos = f_in.tellg();
f_in.clear();
return 1;
}
}
f_in.close();
}