Язык программирования C++ от Страуструпа

       

Класс ios


Большинство средств управления вводом-выводом сосредоточены в классе ios, который является базовым для ostream и istream. По сути здесь находится управление связью между istream или ostream и буфером, используемым для операций ввода-вывода. Именно  класс ios контролирует: как символы попадают в буфер и как они выбираются оттуда. Так, в классе ios есть член, содержащий информацию об используемой при чтении или записи целых чисел системы счисления (десятичная, восьмеричная или шестнадцатеричная), о  точности  вещественных чисел и т.п., а также функции для проверки и установки значений переменных, управляющих потоком.

class ios {

  //...

  public:

     ostream* tie(ostream* s);      // связать input и output

     ostream* tie();                // возвратить "tie"

     int width(int w);              // установить поле width

     int width() const;

     char fill(char);               // установить символ заполнения

     char fill() const;             // вернуть символ заполнения

     long flags(long f);

     long flags() const;

     long setf(long setbits, long field);



     long setf(long);

     long unsetf(long);

     int precision(int);            // установить точность для float

     int precision() const;

     int rdstate(); const;          // состояния потоков, см. $$10.3.2

     int eof() const;

     int fail() const;

     int bad() const;

     int good() const;

     void clear(int i=0);

     //...

};

В 10.3.2 описаны функции, работающие с состоянием потока, остальные

приведены ниже.



Содержание раздела