Ввод-вывод с использованием потоковых классов. Стандартные функции ввода-вывода (общие сведения)

   
На этом шаге мы приведем общие сведения о стандартных функциях ввода-вывода.

   
Вместо стандартных операторов >> и << для чтения из потока данных и записи в поток данных можно
использовать ряд других функций, представленных в этом разделе.

   
Эти функции предназначены для чтения и записи "неформатированных" данных (в отличие от операторов << и >>,
которые читают и записывают "форматированные" данные). Функции при чтении никогда не игнорируют начальные
пропуски (в отличие от операторов, которые по умолчанию начальные пропуски игнорируют). Кроме того, в них
используется другой принцип обработки исключений: флаг badbit устанавливается, если функция генерирует
исключение, причем не важно, кто является источником исключения - сама вызванная функция или исключение
генерируется в результате установки флага состояния. Если в маске исключений установлен флаг badbit,
исключение передается дальше. Тем не менее функции неформатированного вывода, как и функции форматированного
вывода, создают объект sentry.

   
Для передачи количества символов в этих функциях используется тип streamsize:

  namespace std {
    typedef ... streamsize;
    .    .   .   .   .
  }

   
Тип streamsize обычно представляет собой знаковую версию size_t. Тип является знаковым, потому
что он также используется для передачи отрицательных значений.

   
На следующем шаге мы рассмотрим функции ввода.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий