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

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

Войти
Регистрация
Восстановить пароль
 
F I G H T E R
11 / 1 / 1
Регистрация: 21.01.2013
Сообщений: 26
#1

Программа считывания литерной матрицы из текстового файла не выходит из цикла - C++

12.04.2014, 19:15. Просмотров 287. Ответов 3
Метки нет (Все метки)

Доброго времени суток. Программа считывания литерной матрицы из текстового файла не выходит из цикла. Похоже что программа не достигает метки конца файла. Никак не могу понять в чём я ошибся. Подскажите пожалуйста.
Код программы:
Кликните здесь для просмотра всего текста
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
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
const int height = 40 , width = 60;
 
int main()
{
    FILE *f;
    f = fopen("file.txt","rt");
    if(!f)
    {
        cout << "file.txt not found" << endl;
        return -1;
    }
 
    char arr[height][width];
    int w, h;
    char c;
    c = w = h = 0;
    while(!feof(f))
    {
        w = 0;
        while(((c = getc(f)) != '\n'))
        {
            //arr[h][w] = c;
            //cout << w << " ";
            cout << c;
            w++;
            //system("pause");
        }
        //cout << "h =" << h << endl;
        h++;
    }
    cout << "Work!!!" << endl;
    fclose(f);
    
    return 0;
}

Содержимое файла:
Кликните здесь для просмотра всего текста
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2014, 19:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа считывания литерной матрицы из текстового файла не выходит из цикла (C++):

Сохранение и считывания списка с текстового файла - C++
Всем привет! Ребята я делаю программу по работе со списками и она уже почти готова, по сути всё сделал! Вот только не знаю как сохранить...

Поогите написать программу считывания произвольного количества строк из текстового файла - C++
Ну вводиш в программу файл например формата txt. В этом файле что то написанно. И нажимая enter программа выдает нам, напимер 5 строк из...

Алгоритм Лемпела-Зивы. Программа не выходит из цикла - C++
Данная программа реализует (почти) Алгоритм Лемпела-Зивы #include &lt;vector&gt; #include &lt;string&gt; #include &lt;iostream&gt; #include...

Не работает программа считывания последовательности из файла - C++
Пытаюсь сделать программу, которая достает из текстового файла последовательности, и предлагает их решить. Если пользователь не правильно...

Написать программу для считывания элементов матрицы размером М х N из файла - C++
Помогите решить такую проблему. Задача проста но суть в том чтобы не пользоваться Fstream и stdio.h. Нужно используя библиотеку iostream...

Почему после считывания матрицы из файла начинается повторное считывание? - C++
Здравствуйте. ПРоблема такова, считывает размер матрицы и саму матрицу, после успешного считвания начинает по новой её считывать, хотя...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6380 / 5945 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
12.04.2014, 19:50 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Последняя строка может и не содержать \n:
C++
1
        while(((c = getc(f)) != '\n')&& !feof(f))
2
F I G H T E R
11 / 1 / 1
Регистрация: 21.01.2013
Сообщений: 26
12.04.2014, 22:20  [ТС] #3
zss, это да, но без \n программа всё равно из цикла не выходит(
0
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.04.2014, 00:14 #4
Цитата Сообщение от F I G H T E R Посмотреть сообщение
это да, но без \n программа всё равно из цикла не выходит(
Выходит, если исправить, как написал zss.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.04.2014, 00:14
Привет! Вот еще темы с ответами:

Функция считывания из текстового файла - C (СИ)
Здравствуйте, написал функцию, работает некорректно, может слишком долго работаю, но не вижу в чем проблема. Заранее спасибо за помощь. Вот...

Цикл считывания и использования строк из текстового файла - CMD/BAT
Есть программа добавления пользователей в группы из текстового файла, в файле в строке находятся две переменные: 1 user1 через пробел, 1(2,...

Выбор текстового файла для считывания из него - C++ Builder
Здравствуйте! Подскажите, пожалуйста, каким образом можно открыть нужный файл (на форме) для считывания информации из любой папки с любым...

Программа не выходит из цикла. - C++ Builder
Нужно что бы выводились все трехзначные числа у которых в десятичной записи не совпадают два числа. Ок. Написал. #include &quot;stdio.h&quot; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.04.2014, 00:14
Ответ Создать тему
Опции темы

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