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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
jimmyknife
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 19
#1

Функция getline и ifstream - C++

30.03.2014, 22:50. Просмотров 2274. Ответов 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
int main() {
    int i,c;
    char filename[81];
    char input_line[81];
    cout<<"Enter a file name and press ENTER: ";
    cin.getline(filename,80);
    ifstream file_in(filename);
    if(! file_in){
        cout<<"File"<<filename;
        cout<<" could not be opened.";
        return -1;
        
    }
    int lines_to_read=20;
     while (1) {
        for (i = 1; i <= lines_to_read && ! file_in.eof(); i++) {
            file_in.getline(input_line, 80);
            
            cout << input_line << endl;
        }
        if (file_in.eof())
            break;
        cout << "More? (Press 'Q' and ENTER to quit, or # lines to print.)>";
        cin.getline(input_line, 80);
        c = input_line[0];
        if (c == 'Q' || c == 'q')
            break;
        else if (strlen(input_line) > 0)       // If user input something
            lines_to_read = atoi(input_line);  //  set new value of lines_to_read
    }
    return 0;}
Вот код программы, он записывает с текстового файла в консоль символы.
Не могу понять вот этот кусок
C++
1
2
3
4
for (i = 1; i <= lines_to_read && ! file_in.eof(); i++) {
            file_in.getline(input_line, 80);
            
            cout << input_line << endl;
А именно вопрос : как вот эта строка?
C++
1
file_in.getline(input_line, 80);
каждый раз определяет новую строку в текстовом файле?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2014, 22:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция getline и ifstream (C++):

Ошибка ifstream или getline() - C++
Цель программы: дешифратор Цезаря через анализ частоты встречаемости символа в тексте. Не понимаю в чём проблема: когда запускаю не...

Читаем из файла, трабла (ifstream, getline) - C++
Доброе время суток! Ребят знаю туплю но все же, спрошу, не тыкайте палкой! Имеем тексовый файл MainMenu_start...

Функция get() класса ifstream - C++
Есть код, который считает количество символов в файле (функцию gcount() нельзя использовать по заданию) : char buf; ...

Функция С++ getline() - C++
Здравствуйте! Скажите пожалуйста, каков смысл функции cin.getline(). Если не сложно,приведите пожалуйста пример.

Функция getline - C++
Добрый вечер. Очень долго пытался найти в чём проблема в работе программы-она выдавала немного не то значение,которые было необходимо.Ни...

Функция getline - C++
Делаю упражнение по С++ (консольное приложение). Необходимо считать строку, включая пробелы. Вот описание класса: class employee { ...

3
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.03.2014, 00:19 #2
Цитата Сообщение от jimmyknife Посмотреть сообщение
Вот код программы, он записывает с текстового файла в консоль символы.
Читает, строки из файла, в переменную типа массив char (в строку input_line) и выводит, считанную строку, на консоль.
0
RamonN
32 / 32 / 11
Регистрация: 13.07.2011
Сообщений: 138
31.03.2014, 00:23 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
getline определяет символ '\n' как конец ввода, как только находит, перемещается на следующую строку до нового '\n'
1
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.03.2014, 00:27 #4
http://www.cplusplus.com/reference/i...tream/getline/
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2014, 00:27
Привет! Вот еще темы с ответами:

функция getline() в dev_C++ - C++
Помогите пожалуйста, не могу разобраться с функцией getline() Пишу на dev_C++ и не понемаю смысл работы функции. Она читает, пока не...

Функция getline в условии while - C++
Здравствуйте! Перевожу код с c++ на c#. Но возникла проблема с условием цикла while while(getline(cin,S)) {...} Почитал в...

Не выполняется функция getline() - C++
Добрый вечер, уважаемые программисты! Написал программу, содержащую класс, который имеет два поля: номер и имя, и два метода: ввод и...

Функция getline(cin,.) - C++
Здравствуйте уважаемые программисты. По темам пробежался getline(), но чет не понял, проблема, почему при вводе данных о первом человеке...


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

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

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