ВУЗ:
Составители:
Рубрика:
72
При вводе-выводе можно выполнять форматирование данных.
Чтобы использовать операции >> и << с данными пользовательских
типов, определяемых пользователем, необходимо расширить действие этих
операций, введя новые операции-функции. Первым параметром операции-
функции должна быть ссылка на объект потокового типа, вторым – ссылка
или объект пользовательского типа.
В файле iostream.h определены следующие объекты, связанные со
стандартными потоками ввода-вывода:
cin – объект класса istream, связанный со стандартным буферизиро-
ванным входным потоком;
cout – объект класса ostream, связанный со стандартным буферизи-
рованным выходным потоком;
cerr – не буферизированный выходной поток для сообщения об
ошибках;
clog – буферизированный выходной поток для сообщения об ошиб-
ках.
Форматирование.
Непосредственное применение операций ввода << и вывода >> к
стандартным потокам cout, cin, cerr, clog для данных базовых типов приво-
дит к использованию “умалчиваемых” форматов внешнего представления
пересылаемых значений.
Форматы представления выводимой информации и правила воспри-
ятия данных при вводе могут быть изменены программистом с помощью
флагов форматирования. Эти флаги унаследованы всеми потоками из ба-
зового класса ios. Флаги форматирования реализованы в виде отдельных
фиксированных битов и хранятся в protected компоненте класса long
x_flags. Для доступа к ним имеются соответствующие public функции.
Кроме флагов форматирования используются следующие protected
компонентные данные класса ios:
int x_width – минимальная ширина поля вывода.
int x_precision – точность представления вещественных чисел (коли-
чество цифр дробной части) при выводе;
int x_fill – символ-заполнитель при выводе, пробел – по умолчанию.
Для получения (установки) значений этих полей используются сле-
дующие компонентные функции:
int width();
int width(int);
int precision();
int precision(int);
char fill();
char fill(char);
Страницы
- « первая
- ‹ предыдущая
- …
- 68
- 69
- 70
- 71
- 72
- …
- следующая ›
- последняя »