Читайте также: |
|
Введення і виведення в мові С
Введення/виведення у мові С здійснюється за допомогою функцій зі стандартних бібліотек. Щоб ними користуватися, в програму треба включити відповідні h-файли: stdio.h, stdlib.h, conio.h та ін Головна бібліотека, в якій містяться основні функції введення/виведення, в тому числі і забезпечують стандартне введення/виведення, - stdio.h.
Введення/виведення файлів
Щоб працювати з файлом, його спочатку слід відкрити: зв'язати зі спеціальною структурою з ім'ям FILE, яка описана в бібліотеці stdio.h і в якій задаються характеристики файлу (розмір буфера введення/виведення, стан файлу, останній прочитаний запис і т.п.). Зв'язок цей виконується за допомогою функції fopen (), яка теж входить в бібліотеку stdio.h і повертає вказівник на структуру FILE. Тому в програмі, перш за все, слід задати вказівник на структуру FILE, а потім записати оператор відкриття файлу:
FILE *fp;
fp = fopen(< ім’я_файлу >, < спосіб_відкриття_файлу >);
Функція fopen () має два параметри: ім'я файлу і спосіб відкриття файлу. Спосіб відкриття файлу визначає, як користувач буде працювати з файлом: читати його, писати в нього дані або робити щось ще.
Способи відкриття файлу і їх коди можуть бути наступні:
- r - файл відкривається тільки для читання даних з нього;
- w - файл відкривається тільки для запису в нього (якщо файл не існує, він створюється автоматично і відкривається для запису);
- a - файл відкривається для дозапису даних у кінець файлу (якщо файл не існує, він створюється для запису);
- r+ - існуючий файл відкривається для поновлення: можна і читати з файлу, і записувати в нього дані;
- w+ - створюється новий файл для поновлення: можна і читати, і записувати в нього дані;
- a+ - файл відкривається для дозапису даних у кінець файлу (якщо файл не існує, він створюється автоматично і відкривається для запису).
Якщо з якоїсь причини відкриття файлу не відбулося (наприклад, в режимі r+ задано ім'я неіснуючого файлу), то функція fopen () повертає значення NULL. Тому при відкритті файлу слід здійснювати перевірку:
If ((fp = fopen((< ім’я_файлу >, < спосіб_відкриття_файлу >) == NULL)
{ оператори обробки помилки відкриття}
{ інші оператори програми }
Після того, як програма з даним файлом відпрацювала, слід "відв'язати" структуру FILE від файлу або, як кажуть, закрити файл. Це здійснює функція fclose (fp). Вона не тільки розриває зв'язок структури з файлом, але і записує в пам'ять залишившийся вміст буфера введення/виведення, через який і організується введення/виведення. Тільки після закриття файлу з ним можна виконувати які-небудь дії, тому що він "вільний", "не прив'язаний". Наприклад, його можна видалити або знову відкрити в іншому режимі відкриття і т. д.
Дата добавления: 2015-07-10; просмотров: 205 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Опросник | | | Функції для роботи з файлами |