- •1. Основные отличия стандартной библиотеки Си от других
- •2. Определение класса символов и преобразование символов
- •3. Работа с областями памяти и строками
- •4. Функции преобразования типов
- •5. Математические функции
- •6. Динамическое распределение памяти
- •7. Функции стандартного ввода и вывода
- •8 . Функции ввода/вывода высокого уровня
- •9. Функции ввода/вывода нижнего уровня
- •10. Функции ввода/вывода с консольного терминала
- •11. Работа с каталогами файловой системы
- •12. Операции над файлами
- •13. Использование вызовов операционной системы
- •14. Управление процессами
- •15. Поиск и сортировка
- •16. Функции для работы с датой и временем
12. Операции над файлами
В табл. 16 описаны основные стандартные функции, служащие для работы с файлами. В левом столбце таблицы под именем функции указаны имена библиотечных файлов, содержащих прототипы.
Таблица 8.16. Функции для работы с файлами
_____________________________________________________________________________
Функция Краткое описание
_____________________________________________________________________________
access
<io.h> int access(const char *filename, int amode); определение прав доступа к файлу.
Допустимы значений amode=06 (проверка на чтение и запись), 04 (чтение),
02 (запись), 01 (выполнение), 00 (проверка на существование файла)
chmod
<io.h> int chmod(const char *path, int amode); изменение прав доступа к файлу.
Допустимые значения amode определены в sys\stat.h: S_IWRITE (разрешение
на запись), S_IREAD (на чтение), S_IREAD | S_IWRITE (то и другое).
Вернет 0 в случае успеха, -1 при ошибке
mktemp
<dir.h> char *_mktemp(char *template); генерация уникального имени файла.
Пример:
char *fname = "TXXXXXX", *ptr;
ptr = mktemp(fname);
remove
<stdio.h> int remove(const char *filename); удаление файла. Вернет 0 в случае успеха,
-1 при ошибке
rename
<stdio.h> int rename(const char *oldname, const char *newname); переименование файла
из oldname в newname. Вернет 0 в случае успеха, -1 при ошибке
13. Использование вызовов операционной системы
Для доступа к функциям операционных систем, совместимых с MS‑DOS предназначена библиотека dos.h. Можно выделить следующие основные группы функций этой библиотеки:
· Обработка прерываний (int86, int86x, getinterrupt, disable, enable, getvect, setvect);
· Работа с сегментами памяти (peek, poke, MK_FP);
· Доступ к секторам диска (absread, abswrite);
· Доступ к файловым таблицам FAT (getfat, getfatd, getdfree);
· Работа с портами (inport, outport).
Компилятор может предоставлять также возможности для обращения к базовой подсистеме ввода/вывода операционной системы BIOS. Основные функции кратко перечислены в табл. 17. Их прототипы содержатся в файле bios.h.
Таблица 17. Основные функции для работы с BIOS
________________________________________________________________________________
Функция Краткое описание
________________________________________________________________________________
bioscom управление последовательным каналом
biosdisk управление диском
biosequip проверка конфигурации аппаратуры
bioskey управление клавиатурой
biosmemory возвращает объем оперативной памяти
biosprint управление устройством печати
biostime управление BIOS-таймером