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



         

Ioctl - часть 2


Для значений func от 2 до 5, возвращаемое значе- ние - это количество реально переданных байтов.

Для значениея func 6 или 7, возвращаемое значе- ние - это статус устройства.

В любой ситуации, если обнаружена ошибка, возвра- щается -1 и глобальная переменная errno получает одно из следующий значений:

EINVAL - неверный аргумент; EBADF - неверный номер файла; EINVDAT - неверные данные.

Переносимость Функция ioctl поддерживается на системах UNIX, но не с описанными выше параметрами. На системе UNIX версии 7 и системе SYSTEM III применение функции ioctl различно. Вызовы функции ioctl не переносимы на системах UNIX и очень редко переносятся с одной системы DOS на другую.

В версиях MS-DOS 3.0 параметр func разширен двумя значениями: 8 и 11.

Пример:

#include

#include

#include

int main(void) { int stat; /* функция 8 используется, чтобы определить, является ли диск, в текущем устройстве сменным */ stat = ioctl(0, 8, 0, 0); printf("Диск %c %s сменный\n", getdisk() + 'A', (stat == 0) ? "" : "не"); }




Содержание  Назад  Вперед