Описание функций Си


Abswrite



     abswrite


Функция Запись абсолютных секторов на диск.

Синтаксис #include

int abswrite(int drive, int nsects, int lsect, void * buffer);

Файл, содержащий dos.h прототип

Описание abswrite записывает заданные сектора диска. Функ- ция игнорирует логическую структуру диска и не об- ращает внимание на файлы, блоки FAT или директо- рии.

Примечание. При неверном использовании abswrite может перезаписать файлы, директории или блоки FAT.

аbswrite произвадит запись секторов диска посредс- твом прерывания DOS 0x26.

drive = номер диска, на который производится за- пись (0=А, 1=В, и т.д.) nsects = количество записываемых секторов lsect = начальный логический номер сектора buffer = адрес памяти, откуда ,берутся данные.

Количество записываемых секторов ограничено суммар- ным размером сегмента памяти, расположенного выше адреса buffer. Таким образом, 64К - максимальный размер области памяти, который может быть обработан за один вызов функции abswrite.

Возвращаемое При успешном завершении abswrite возвращает 0. значение При возникновении ошибки, функция возвращает значение -1 и присваивает переменной errno значе- ние регистра AX, получаемое при системном вызове. Более детальную информацию об еrrno смотрите в документации по DOS.

Переносимость abswrite уникальна для DOS.

Смотрите также EW1accessFW0

Функция Определяет возможность доступа к файлу.

Синтаксис #include

int access(const char * filename, int amode);

Файл, содержащий io.h прототип

Описание access проверяет файл c именем filename для определения, существует ли он, может ли он быть прочитан, записан или выполнен.

Список значений параметра amode: 06 проверка разрешения на чтение и запись; 04 проверка разрешения на чтение; 02 проверка разрешения на запись; 01 проверка на выполнение (игнорируется); 00 проверка на существование файла;

Примечание. Под управлением операционной системы DOS все существующие файлы имеют доступ на чтение (amode равен 04), поэтому 00 и 04 дают один и тот же результат. Аналогично, значения 06 и 02 эквивалентны, так как в DOS доступ на запись подразумевает и доступ на чтение.




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