Язык программирования C++. Вводный курс

         

возвращает объект класса ostream, для


возвращает объект класса ostream, для которого она вызвана.

Парной для функции write() из класса ostream

является функция read() из класса istream с такой сигнатурой:

read( char* addr, streamsize size )

read()

читает size

соседних байт из входного потока и помещает их, начиная с адреса addr. Функция gcount()

возвращает число байт, прочитанных при последнем обращении к read(). В свою очередь read() возвращает объект класса istream, для которого она вызвана. Вот пример использования getline(), gcount() и write():











#include <iostream>

int main()

{

           const int lineSize = 1024;

           int lcnt = 0; // сколько строк прочитано

           int max = -1; // длина самой длинной строки

           char inBuf[ lineSize ];

           // читается до конца строки, но не более 1024 символов

           while (cin.getline( inBuf, lineSize ))

           {

                  // сколько символов фактически прочитано

                  int readin = cin.gcount();

                  // статистика: счетчик строк, самая длинная строка

                  ++lcnt;

                  if ( readin > max )

              max = readin;

                  cout << "Строка #" << lcnt

                       << "\tПрочитано символов: " << readin << endl;

                  cout.write( inBuf, readin).put('\n').put('\n');

           }

           cout << "Всего прочитано строк: " << lcnt

<< endl;

           cout << "Самая длинная строка: " << max << endl;



}

Когда на вход было подано несколько фраз из романа Германа Мелвилла “Моби Дик”, программа напечатала следующее:

Строка #1 Прочитано символов: 45

Call me Ishmael.  Some years ago, never mind

Строка #2 Прочитано символов: 46

how long precisely, having little or no money

Строка #3 Прочитано символов: 48

in my purse, and nothing particular to interest


Содержание  Назад  Вперед







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий