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

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

Войти
Регистрация
Восстановить пароль
 
lex90
2 / 2 / 0
Регистрация: 19.01.2014
Сообщений: 51
#1

Выйти из цикл по окончании всех строк в файле - C++

01.02.2014, 22:47. Просмотров 298. Ответов 5
Метки нет (Все метки)

Привет Всем буду Благодарен за все ответы.

Программа открыает TXT файл и поочередно считывает строки из него.Все в принципе получается.Да вот только
мне нужно сделать так что бы когда строки все кончатся что бы выполнение вышло из цикла.Ну и передалось дальше к примеру на вывод строки а далее return 0;

1.Вопрос как проверить кончились ли строки для вывода или нет?
2.fgets в аргументах к примеру длинна строки в данном случае 256 или это совсем другое?

C++
1
2
3
4
5
6
7
 
           char a ;
                   char buff[256];
               a: fgets(buff,256,str);
                   std::cout<<buff;
               std::cout<<"Для продолжения нажмите 2\n!";std::cin>> c ;
           while( с==2 ){ goto a ;}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.02.2014, 22:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выйти из цикл по окончании всех строк в файле (C++):

Как остановить цикл при окончании строки string - C++
Пробую разделять на слова, разделенные пробелом строку string. Внутренний код цикла работает исправно, но сам цикл не останавливается...

Цикл: Выйти в любой момент времени из цикла while нажатием определённой кнопки. Как реализовать? - C++
Необходимо выйти в любой момент времени из цикла while нажатием определённой кнопки. Как реализовать?

Прочитать неограниченное количество строк, а после нажатия Enter выйти из цикла - C++
Здравствуйте. Столкнулся с такой проблемой: необходимо прочитать неограниченное количество строк, а после нажатия Enter выйти из цикла. ...

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

Цикл для подсчета строк ф файле. - PHP
какой цикл надо задать чтобы из файла читалось столько строк сколько есть в файле..именно строк а не весь текст как бы каждая строка...

Использовать цикл для обхода и добавления строк в текстовом файле - C++ Builder
Доброго времени суток! Плохо &quot;дружу&quot; с циклами, подскажите как реализовать такую вещь: Есть текстовый файл такого содержания: ...

5
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
01.02.2014, 23:25 #2
Цитата Сообщение от lex90 Посмотреть сообщение
while( с==2 ){ goto a ;}

Не по теме:

Да поправят меня господа эксперты но сочетать while и goto это равноценно селедку молоком запивать.

А вообще весь код покажите
0
Меорн
74 / 59 / 29
Регистрация: 01.02.2014
Сообщений: 203
01.02.2014, 23:39 #3
Цитата Сообщение от mustimur Посмотреть сообщение

Не по теме:

Да поправят меня господа эксперты но сочетать while и goto это равноценно селедку молоком запивать.

А вообще весь код покажите

Не по теме:

Согласен. Я goto уже лет 10 не видел в программах. а тут еще в таком сочетании... О_о

0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
01.02.2014, 23:43 #4
Цитата Сообщение от Меорн Посмотреть сообщение
Согласен. Я goto уже лет 10

Не по теме:

Я его не давно применял, удобно при "дословном" переводе старых отлаженных на фортране еще мат.функций на C++. Переводишь дословно не думая, что с чем объединить и не ошибиться

0
lex90
2 / 2 / 0
Регистрация: 19.01.2014
Сообщений: 51
02.02.2014, 22:15  [ТС] #5
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
#include<iostream>
#include<string>
using namespace std;
int main(){
            
           char  c ; 
           char  exit;  
           setlocale(LC_ALL,".1251"); 
           char stroka[256];
           std::cout<<"Введите путь к файлу!";
           std::cin>>stroka;
           FILE *str = fopen (stroka,"r");
           
           char a ;
           char buff[256];
        a: fgets(buff,256,str);
           std::cout<<buff;
           std::cout<<"Для продолжения нажмите 2\n!";std::cin>> c ;
           while(  ){ goto a ;}
           
           
           char x;
        x: std::cout<<"Для выхода из программы нажмите 1!\n";std::cin>>exit;
            
           while( exit==1 ){return 0;}
           goto x;
 
}
Пожалуйста подскажите.Пока обучаюсь

Добавлено через 15 секунд
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
#include<iostream>
#include<string>
using namespace std;
int main(){
            
           char  c ; 
           char  exit;  
           setlocale(LC_ALL,".1251"); 
           char stroka[256];
           std::cout<<"Введите путь к файлу!";
           std::cin>>stroka;
           FILE *str = fopen (stroka,"r");
           
           char a ;
           char buff[256];
        a: fgets(buff,256,str);
           std::cout<<buff;
           std::cout<<"Для продолжения нажмите 2\n!";std::cin>> c ;
           while(  ){ goto a ;}
           
           
           char x;
        x: std::cout<<"Для выхода из программы нажмите 1!\n";std::cin>>exit;
            
           while( exit==1 ){return 0;}
           goto x;
 
}
Пожалуйста подскажите.Пока обучаюсь
0
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
03.02.2014, 16:01 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Например так если не напутал
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
#include<iostream>
#include<string>
using namespace std;
int main(){
            
           int  c; 
           char  exit;  
           setlocale(LC_ALL,".1251"); 
           char stroka[256];
           std::cout<<"Введите путь к файлу!";
           std::cin>>stroka;
           FILE *str = fopen (stroka,"r");
                     
           char buff[256];
           do
           {
           if (fgets(buff,256,str)==NULL) c=2;
           else {
           
           std::cout<<buff;
           std::cout<<"Для продолжения нажмите 2\n!";std::cin>> c ;}
           }while(c==2);
           
           
          do
          {
              std::cout<<"Для выхода из программы нажмите 1!\n";std::cin>>exit;
          } while( exit!=1 );
          return 0;
 
}
1
03.02.2014, 16:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2014, 16:01
Привет! Вот еще темы с ответами:

В текстовом файле определить количество всех строк и количество всех символов - Turbo Pascal
1. Создать или открыть текстовый (типизированный, нетипизированный) файл. 2. Выполнить над текстовым (типизированным, нетипизированным)...

Сортировка всех строк в файле по возрастанию - C#
Есть значит код: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; ...

Вывод всех максимальных строк в файле - C (СИ)
Подскажите, как сделать вывод ВСЕХ максимальных строк, данных в файле. #include &lt;iostream&gt; using namespace std; int main() { ...

Сделать одинаковую длину всех строк в файле - Pascal ABC
Добрый день. У меня возникла проблема со следующей задачей: Дан текст, который разбит на строки длиной &lt;=80 символов....


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

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

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