Операционная система MS DOS (том 2)

Секс знакомства в нижневартовске по материалам lisichki.sex. | Что петь в караоке по материалам brusoff-karaoke.ru. |

Буферизация ввода/вывода - часть 3


На входе: AH = 68h
BX = файловый индекс открытого файла
На выходе: AX = Код ошибки, если был установлен в 1

флаг переноса CF;

0, если операция выполнена успешно.

Дополнительно обновляется дескриптор файла в каталоге, а именно поля времени, даты и размера файла.

Обратите также внимание на функцию расширенного открытия файлов 6Ch, входящую в состав MS-DOS версии 4.0. Эта функция позволяет при открытии файла отменить буферизацию.

Стандартные библиотеки трансляторов Microsoft QC 2.5 и C 6.0 содержат многочисленные функции, использующие собственный механизм буферизации при работе с файлами. Их часто называют функциями потокового ввода/вывода. Такую буферизацию не следует путать с буферизацией, выполняемой операционной системой. Имена всех этих функций начинаются на f - fopen(), fclose(), fprintf() и т.д.

Функции потокового ввода/вывода хорошо описаны во многих учебных пособиях по языку программирования Си, поэтому мы приведем лишь краткий обзор этих функций, делая акцент на особенностях их применения.

При использовании функций потокового ввода/вывода файлы открываются функцией fopen(), закрываются функцией fclose(). Эти функции не только открывают и закрывают файлы (получают и освобождают их файловый индекс), но и, соответственно, создают и уничтожают структуру типа FILE, описанную в файле stdio.h и связанную с данным файлом:

extern FILE {

char *_ptr; // положение текущего символа int _cnt; // количество оставшихся байтов char *_base; // адрес буфера char _flag; // флаг управления доступом char _file; // файловый индекс

} _NEAR _CDECL _iob[];

Для организации потокового ввода/вывода вначале необходимо при помощи функции fopen()

открыть файл. Функция fopen() имеет следующий прототип:

FILE *fopen(char *filename, char *mode);

Первый параметр указывает на строку, содержащую путь открываемого файла, второй - на строку режима открытия файла. Возможны следующие режимы:

"r" файл открывается для чтения;
"w" файл открывается для записи;
"a" файл открывается для записи, данные будут добавляться в конец файла.
<


- Начало -  - Назад -  - Вперед -