МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів
Контакти
Тлумачний словник Авто Автоматизація Архітектура Астрономія Аудит Біологія Будівництво Бухгалтерія Винахідництво Виробництво Військова справа Генетика Географія Геологія Господарство Держава Дім Екологія Економетрика Економіка Електроніка Журналістика та ЗМІ Зв'язок Іноземні мови Інформатика Історія Комп'ютери Креслення Кулінарія Культура Лексикологія Література Логіка Маркетинг Математика Машинобудування Медицина Менеджмент Метали і Зварювання Механіка Мистецтво Музика Населення Освіта Охорона безпеки життя Охорона Праці Педагогіка Політика Право Програмування Промисловість Психологія Радіо Регилия Соціологія Спорт Стандартизація Технології Торгівля Туризм Фізика Фізіологія Філософія Фінанси Хімія Юриспунденкция |
|
|||||||
ОБМІН ДАНИМИ З ФАЙЛАМИЛекція № 11
Три рівні організації введення/виведення даних Поняття файла і потоку; буферизація даних у процесах високорівневого потокоорієнтованого обміну даними Поділ бібліотечних функцій <stdio.h> на групи за призначенням Відкриття та закриття потоків, функції fopen () та fclose () Стандартні потоки, перескерування потоків Бібліотечні функції потокового введення/виведення окремих символів і символьних рядків Файловий обмін блоками даних, функції fread() та fwrite () Форматне введення/виведення даних, функції fscanf () та fprintf ()
Позиціювання покажчика поточної позиції файла Функції перевірки стану файла та аналізу помилок Функції роботи з буферами потоків Редагування вмісту файла, витирання та перейменування файлів, функції <dir.h> для роботи з каталогами та файлами Функції низькорівневого звертання до файлів
У компілятор мови С не включено спеціальних засобів для введення/виведення даних. Тому обмін даними як зі зовнішніми (консольними) пристроями, так і з дисковими файлами реалізовано через відповідні набори бібліотечних функцій.
Бібліотеки більшості систем програмування мови С підтримують функції, що дають змогу здійснювати операції введення/виведення даних на трьох рівнях:
· високорівневе, т. зв. потокоорієнтоване введення/виведення; · введення/виведення низького рівня; · обмін даними з консольними пристроями.
Високорівневе введення/виведення використовує однаковий підхід у програмуванні обміну даними з файлами і зовнішніми пристроями та єдиний інтерфейс, незалежний від структури і способів доступу до файлу чи термінального пристрою. Всі файли та дані з пристроїв розглядаються як неструктуровані набори байтів - потоки. Функції високорівневого потокового введення/виведення прості в програмуванні, мобільні, оскільки вони підтримуються стандартом мови С, та високоефективні завдяки внутрішній буферизації даних. Прототипи функцій потокоорієнтованого буферизованого обміну даними записані в заголовному файлі <stdio.h>. Основні з них розглянемо ниижче. Функції низькорівневого введення/виведення базуються на засобах обміну даними, що властиві кожній конкретній операційній системі, тому вони не належать до стандартизованих. Ці функції не виконують форматування даних у процесах введення/виведення і не застосовують буферизації. З кожним файлом, відкритим на низькому рівні, пов'язується свій цілочисловий дескриптор (його також називають префіксом). Дескриптор зберігає номер позиції у внутрішніх таблицях операційної системи, де записано інформацію про цей файл. Функції низькорівневого введення/виведення блокоорієнтовані і забезпечують виграш у швидкодії лише тоді, коли обсяг блоку даних, що передається за одну операцію введення чи виведення, кратний ємності сектора диска, що становить 512 байтів. Прототипи функцій бібліотеки Borland C, які реалізують низькорівневе звертання до файлів, зберігаються в заголовному файлі <іо.h>. Функції консольного введення/виведення доповнюють і розширюють можливості високорівневих функцій щодо введення даних з клавіатури і керування формою зображення екранних повідомлень у текстових режимах виведення інформації. До цієї групи належать також функції передавання даних через порти. Консольний обмін даними найбільш залежний від операційної та апаратної платформи комп'ютера. Прототипи функцій консольного введення/виведення оголошені в заголовному файлі <conio.h>. Читайте також:
|
||||||||
|