АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Теоретична інформація

Читайте также:
  1. VІІІ. Теоретична база
  2. Вихідна інформація
  3. Вихідна інформація
  4. Дезінформація як метод маніпулювання людською свідомістю
  5. Дешифратор (інформація для психолога)
  6. ДСТУ 3582 – 97 Інформація і документація. Скорочення слів в українській мові у бібліографічному описі. Загальні вимоги та правила.
  7. ЗАГАЛЬНА ІНФОРМАЦІЯ
  8. Загальна інформація про компанію
  9. Загальна інформація про Сумську область
  10. Інформація і розвинений капіталізм (Гербер Шиллер).
  11. Інформація на диску записується вздовж концентричних кіл – доріжок (треки), поділених на сектори.
  12. Інформація по країнах призначення, відправлення та транзиту

Лабораторна робота №2.1

 

Тема: „Дослідження роботи з файловим вводом-виводом”

 

Мета роботи – отримати навички з використання системних викликів UNIX для роботи з файловою системою.

 

Теоретична інформація

 

Для роботи з файловим вводом-виводом у UNIX існує набір системних викликів, які реалізують базові операції – відкриття / закриття файлів, ввід, вивід, управління покажчиком файлу і т.і. Робота з файлом організується через номер файлового дескриптора – ціле число, яке отримується при відкритті файлу.

В мові С роботу з вводом-виводом можна реалізувати за допомогою бібліотеки stdio.h. Функції бібліотеки наведені в таблиці 1.

 

Синтаксис Призначення
FILE * fopen (const char * filename, const char * mode); Відкриття файлу в наступних режимах:
R Тільки для читання існуючого файлу
W На запис, якщо файл існує перезаписує його зміст, якщо ні – створює новий файл
A Файл відкривається для додавання нової інформації в кінець файлу, (створюється файл, якщо не існує)
R+ Відкриває існуючий файл для читання та запису
W+ Відкриває існуючий файл для читання та запису при цьому знищує попередню інформацію
A+ Відкриває існуючий файл для читання та запису без знищення попередньої інформації
int fclose (FILE * stream); Закриття файлу
int fgetc (FILE * stream); Повертає символ з відкритого потоку
char * fgets (char * str, int num, FILE * stream); Повертає рядок символів з відкритого потоку
int fputc (int character, FILE * stream); Занесення символу в відкритий потік на поточну позицію покажчика
int fputs (const char * str, FILE * stream); Занесення рядка символів у відкритий потік на поточну позицію покажчика
int fsetpos (FILE * stream, const fpos_t * pos); Встановлення позиції покажчика
int fgetpos (FILE * stream, fpos_t * position); Повертає поточну позицію покажчика

Для роботи з файлами потрібно використовувати структуру FILE. Необхідно об’явити вказівник цього типу. Порядок роботи з файлами наступний: спочатку необхідно відкрити потік, потім здійснити необхідні операції (запис/читання) та закрити потік. У випадку вдалого відкриття файлу, функція fopen повертає дескриптор файлу, у випадку невдачі – false. Потік – це файл або фізичний пристрій (тобто принтер, монітор, в Unix-системах фізичний пристрій представляється файлами), який керує через вказівник на потік. Потоковий ввід-вивід – буферизований. Це означає, що блок даних фіксованого розміру читається або записується в файл не безпосередньо, а через тимчасову область пам’яті - буфер. Після того, як програма закінчила роботу з файлом його необхідно закрити. Закриття файлів здійснюється за допомогою функції fclose, якій в якості параметру передається дескриптор файлу.

 


1 | 2 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)