русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Потоки и файлы


Дата добавления: 2015-06-12; просмотров: 483; Нарушение авторских прав


Фундаментом понимания системы ввода-вывода C (и С++) является концепция потоков и файлов.

Система ввода-вывода предоставляет уровень абстракции между программистом и аппаратными средствами, которая связана с понятием потока. Каждое из устройств (терминал, дисковые накопители и др.) имеет свои особенности, но система преобразует их в единое логическое абстрактное устройство, называемое потоком. Потоки похожи своим поведением и не зависят от устройств. Другими словами, одни и те же или похожие функции можно использовать для записи информации как на диск, так и на другое устройство. Таким образом, для пользователя поток — это либо файл на диске, либо физическое устройство (например, дисплей или принтер). Поэтому когда пользователь выполняет операции ввода-вывода для потока, то имеется ввиду, что он работает либо с файлом, либо с каким-нибудь устройством.

Файлы — это логическая концепция, которая применима к любому устройству (дисковые файлы, терминал и др.). Не все файлы имеют одинаковые возможности. Например, дисковый файл поддерживает произвольный доступ, а модем — нет. Поэтому можно сказать, что потоки одинаковы, а файлы разные.

Есть два типа потоков: текстовые и двоичные.

Текстовые потоки представляют собой последовательность символов, часть из которых могут преобразовываться. Например, при выводе символ новой строки может преобразовываться в два символа: “возврат каретки” и “перевод строки”. А при вводе выполняется обратное преобразование. Отсюда следует, что может не быть однозначного соответствия между записываемыми или считываемыми символами и символами во внешнем устройстве. Кроме этого, количество прочитанных или записанных символов может не совпадать с количеством символов во внешнем устройстве.

Двоичные потоки — последовательность байт, имеющих однозначное соответствие с байтами во внешнем устройстве. Никакого преобразования символов не выполняется. Поэтому количество прочитанных (записанных) байт в точности совпадает с количеством байт во внешнем устройстве.



Тип потока указывается при открытии файла с помощью буквы t или b во втором параметре функции fopen (см. 1.3).



<== предыдущая лекция | следующая лекция ==>
Г л а в а 6 | Объявление файла


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.861 сек.