30 Input/output library [input.output]

30.1 General [input.output.general]

В этом разделе описаны компоненты, которые программы C ++ могут использовать для выполнения операций ввода / вывода.

В следующих подпунктах описываются требования к параметрам потока и компонентам для прямого объявления iostreams, предопределенных объектов iostreams, базовых классов iostreams, буферизации потока, форматирования и манипуляторов потока, потоков строк и потоков файлов, как показано в таблице 106.

Таблица 106 - Сводная информация о библиотеке ввода / вывода
Подпункт Заголовок (ы)
[iostreams.requirements] Требования
[iostream.forward] Форвардные декларации <iosfwd>
[iostream.objects] Стандартные объекты iostream <iostream>
[iostreams.base] Базовые классы Iostreams <ios>
[stream.buffers] Буферы потока <streambuf>
[iostream.format] Форматирование и манипуляторы <istream>
<ostream>
<iomanip>
[string.streams] Строковые потоки <sstream>
[file.streams] Файловые потоки <fstream>
[filesystems] Файловые системы <filesystem>
[c.files] Файлы библиотеки C <cstdio>
<cinttypes>

На рисунке [fig:streampos] показаны отношения между различными типами, описанными в этом разделе. Линия от A до B указывает на то, что является псевдонимом (например, ЬурейеЕ) для B или , что определен в терминах B .

figstreampos traits_pos_type_char traits_pos_type_char char_traits<char> ::pos_type streampos streampos streampos traits_pos_type_char->streampos traits_pos_type_char->streampos iostreams.limits.pos traits_pos_type_wchar_t traits_pos_type_wchar_t char_traits<wchar_t> ::pos_type wstreampos wstreampos wstreampos traits_pos_type_wchar_t->wstreampos traits_pos_type_wchar_t->wstreampos iostreams.limits.pos fpos fpos fpos<mbstate_t> streampos->fpos streampos->fpos iostream.forward wstreampos->fpos wstreampos->fpos iostream.forward traits_off_type_char traits_off_type_char char_traits<char> ::off_type streamoff streamoff streamoff traits_off_type_char->streamoff traits_off_type_char->streamoff iostreams.limits.pos traits_off_type_wchar_t traits_off_type_wchar_t char_traits<wchar_t> ::off_type traits_off_type_wchar_t->streamoff traits_off_type_wchar_t->streamoff iostreams.limits.pos streamoff_type streamoff_type signed integer type sufficient for O/S maximum file size streamoff->streamoff_type streamoff->streamoff_type stream.types streamsize streamsize streamsize streamsize_type streamsize_type signed integer type represents characters xfered or buffer sizes streamsize->streamsize_type streamsize->streamsize_type stream.types
Рисунок 7 - Типы положения, смещения и размера потока [ненормативный]