Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
gekas
0 / 0 / 0
Регистрация: 11.12.2013
Сообщений: 70
#1

Eof не находит конца - C++

22.05.2014, 20:48. Просмотров 513. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
string GetFileLine(fstream &file)
{
    char *atextv = new char[256];
    file.get(atextv, 255, '\n');
    file.get();
    string textv(atextv);
    delete[] atextv;
    return textv;
}
 
fstream file;
string filename;
void main(){
    setlocale(LC_ALL, "Russian");
 
    filename = "Concert.txt";
    filename = RemakeFileName(filename);//Making right file name path
    file.open(filename, fstream::in);
    if (file.is_open())
    {
        while (!file.eof()){                            // ***
            string textv = GetFileLine(file);
            trim(textv);
            cout << textv<<endl;
        }
    }
 
    system("Pause");
}
Цикл *** зацикливается. Где не прав?

Добавлено через 29 минут
Проблема решена. Вместо fileget необходимо использовать getline
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2014, 20:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Eof не находит конца (C++):

std::cin, eof не всегда принимается как признак конца файла - C++
std::string text; char ch = 0; while(!std::cin.get(ch).eof()){ text.append(1, ch); } Ввожу в консоль в Windows: &quot;^Z&quot;...

\n \0 EOF - C++
Добрый вечер, возник такой вопрос: зачем мы заменяем символ конца строки на нуль символ в данном коде (удаление символов содержащихся в s2...

EOF K&R - C++
Всем доброго времени суток. Изучаю Си по Дейтелам, а теперь попала в руки книга авторов языка. Интересно теперь будет параллельно по двум...

Не работает while (!***.eof() ! - C++
Здравствуйте, задание такое: Вводить с клавиатуры данные и записывать их в файл в виде Имя группа оценка Иванов ...

Int Eof - C++
Вот проблема есть массив int a заполнять его целыми числами последовательность завершается признаком конца ввода

Конец файла EOF - C++
Начал заново учить программирование на c++ по книге Кернигана, Ритчи. Дошел до главы с EOF и никак не могу разобраться уже несколько часов....

1
Jupiter
Каратель
Эксперт С++
6564 / 3985 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
22.05.2014, 22:04 #2
Цитата Сообщение от gekas Посмотреть сообщение
Цикл *** зацикливается. Где не прав?
если на этапе чтения произойдет ошибка то eof никогда не наступит
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2014, 22:04
Привет! Вот еще темы с ответами:

Ifstream и eof в нем - C++
Имеется код: int main() { setlocale(LC_ALL, &quot;rus&quot;); // корректное отображение Кириллицы char abc; ofstream fout(&quot;ofstream...

Функция fclose() и EOF - C++
int fclose( FILE *stream); Возвращает 0, если все ОК и возращает EOF, если какая-нибудь ошибка. Функция имеет тип Int. Значит...

Печать значения EOF - C++
Упр.1.7. Керниган,Ритчи.Написать программу,печатающую значение EOF.Натолкните на мысль.Заранее благодарен.

Что делать с EOF - C++
Всем привет. Ввожу в Visual Studio 2012 вот такой код: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #define eof -1 int main() { long...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.