Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
59 / 49 / 14
Регистрация: 23.02.2016
Сообщений: 433

Потоки ввода/вывода, файловые потоки

12.10.2020, 20:52. Показов 628. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Объясните, пожалуйста, механизм считывания данных. Перелопатил кучу статей в интернете и всё равно не понял как это работает. Понял объяснение от Renji тут Детали относительно входного потока cin , что
Входным потоком называется парсер сырого текста, внутри которого лежит ссылка на внешнюю читалку этого самого текста. Как эта читалка работает потоку безразлично, он только запрашивает у нее сырой текст и читает.
Ну а чтобы читалку не дергали слишком часто, предусмотрен механизм буферизации "вот вам 100500 сырых символов, дочитаете - будите, я вам еще почитать дам". Но его использование обязательным не является.
Но дальше так и не собрал картину, что такое сырые данные? Например, пользователь ввёл example. Читает это непосредственно объект std::strembuf, но как он это делает, куда текут данные с ввода? Думал, что по умолчанию выделяется какой-то буфер, в который стекаются данные, но
Стримбуф подразумевает чтение данных из буфера на который указывает gptr() или чтение одного символа из underflow()/uflow(), если в буфере пусто. Ни о каких "строчных чтениях" он слыхом не слыхивал.
буфер ещё может быть и пустой... Это как вообще?
underflow() возвращает текущий символ, не двигая указатель на следующий, uflow() возвращает текущий, передвигая указатель на следующий, но по чему двигается указатель, если буфера нет?
gptr() указывает на буфер с данными, они туда автоматически переносятся? Буфер какого размера? Размер выделяется в зависимости от размера входных данных или фиксированный?

Соотвественно аналогичное непонимание со считыванием символов внешнего файла.
С файлом такой вопрос ещё, допустим все символы этого файла прочитаны и требуется теперь определить их количество, концептуально это должна делать читалка (объект std::streambuf) или входной файловый поток (объект ifstream)?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.10.2020, 20:52
Ответы с готовыми решениями:

ФАЙЛОВЫЕ ПОТОКИ ВВОДА-ВЫВОДА
Дан файл вещественных чисел a.txt Найти количество отрицательных и количество положительных элементов. Добавлено через 14 минут ...

Работа с структурами: выполните, используя файловые потоки для ввода/вывода
Используя тип данных запись с именем PRICE, содержащую следующие поля: • TOVAR – название товара; • KOL – количество товара; • TSENA...

Что такое потоки ввода, потоки вывода?
Здарова всем! Не так давно уже прогаю на С++ и все НИКАК не могу понять, что такое потоки ввода, потоки вывода..! вот допустим...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.10.2020, 20:52
Помогаю со студенческими работами здесь

Потоки ввода-вывода в С++
Ребят, нужна помощь В программирование я новичок, но сдать нужно 1. Написать программу, печатающую символы. Использовать цикл while....

Потоки ввода-вывода
1) Типы данных, для которых перегружены операторы форматного ввода-вывода.

Потоки ввода вывода
Почему с помощью классов ostream и istream нельзя создавать свои потоки ввода вывода? std::ostream output; output <<...

Потоки ввода/вывода
Заметил такую штуку, что если char name = "Тимур"; cout << name << endl; то в консоли иероглифы ╥шьєЁ. А если так char...

Потоки ввода/вывода
Здравствуйте! Расскажите мне пожалуйста подробнее о всех особенностях потоков ввода/вывода; в особенности почему, когда я заполняю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru