Главная страница
Навигация по странице:

  • Возвращаемое

  • Переносимость

  • Назначение

  • Справочник по функциям С++. Подпрограммы классификации Подпрограммы преобразования


    Скачать 3.41 Mb.
    НазваниеПодпрограммы классификации Подпрограммы преобразования
    АнкорСправочник по функциям С++.doc
    Дата07.05.2018
    Размер3.41 Mb.
    Формат файлаdoc
    Имя файлаСправочник по функциям С++.doc
    ТипДокументы
    #18992
    КатегорияИнформатика. Вычислительная техника
    страница66 из 120
    1   ...   62   63   64   65   66   67   68   69   ...   120

    ioctl


    -----------------------------------------------------------------
    Назначение Управляет устройствами ввода-вывода.
    Синтаксис int ioctl(int handle, int cmd[, void *argdx,

    int argcx]);
    Прототип в io.h
    Замечания Это прямой интерфейс к системному вызову 0х44

    (IOCTL).
    Выполняемая функция зависит от значения cmd

    следующим образом:
    0- Получить информацию об устройстве;
    1- Установить информацию об устройстве (в

    argdx);
    2- Прочитать argcx байт и поместить их по ад-

    ресу, на который указывает argdx;
    3- Записать argcx байт, находящихся по адресу

    argdx;
    4- То же, что и 2, за исключением того, что

    handle трактуется, как номер диска (0= те-

    кущий, 1= А и т.д.);
    5- То же, что и 3, за исключением того, что

    handle трактуется, как номер диска (0= те-

    кущий, 1= А и т.д.);
    6- Получить состояние ввода;
    7- Получить состояние вывода;
    8- Проверить сменяемость (только для DOS 3.х)
    11- Запустить счетчик попыток перезапуска при

    конфликте (только для DOS 3.0).
    ioctl может использоватся для получения инфор-

    мации о каналах устройств. Кроме того, могут

    использоваться регулярные файлы, но для них оп-

    ределены только значения cmd 0, 6, и 7.
    Все остальные вызовы возвращают ошибку EINVAL

    для файлов.
    Для получения более полной информации об аргу-

    ментах и возвращаемых значениях необходимо об-

    ратиться к документации по системному вызову

    0х44 в Руководстве программиста MS-DOS.
    Параметры argcx и argdx необязательны.
    ioctl обеспечивает прямой интерфейс с драйвера-

    ми устройств DOS для специальных функций. В ре-

    зультате точное поведение этих функций будет

    различаться в зависимости от оборудования. Кро-

    ме того, некоторые устройства не следуют интер-

    фейсу, описанному здесь. Для точного использо-

    вания ioctl читайте документацию по BIOS.
    Возвращаемое Для cmd 0 или 1 возвращаемым значением будет

    значение информация об устройстве (DX в вызове IOCTL).
    Для cmd, равного от 2-х до 5, возвращается чис-

    ло переданных байт.
    Для cmd 6 и 7 возвращается состояние устройс-

    тва.
    В любом случае, если обнаружена ошибка, возвра-

    щается значение -1, и errno присваивается сле-

    дующее значение:
    EINVAL - неверный аргумент

    EBADF - неверен номер файла

    EINVDAT - ошибочные данные.
    Переносимость ioctl доступен на системах UNIX, но не с этими

    параметрами или возможностями. UNIX.7 и System

    III отличаются по своему использованию ioctl.

    Вызовы ioctl не переносимы для UNIX и редко

    переносимы среди машин MS-DOS.
    DOS 3.0 расширяет ioctl значениями входных па-

    рамиетров 8 и 11.
    Пример

    #include

    #include

    #include
    main()

    {

    int stat;
    /* Используется функция 8 для определения,

    сменяемо ли текущее устройство */

    stat = ioctl(0, 8, 0, 0);
    printf("Устройство %c изменяемо? %s \n",

    getdisk() + 'A', (stat == 0) ? "ДА":"НЕТ");

    }


    Результат выполнения программы
    Устройство C изменяемо? НЕТ

    -----------------------------------------------------------------

    isalnum


    -----------------------------------------------------------------
    Назначение Макрос классификации символов.
    Синтаксис #include

    int isalnum(int ch);
    Прототип в io.h
    Замечания isalnun макрос, который классифицирует целые

    значения кода ASCII просмотром таблицы. Функция

    возвращает не ноль в случае истины и 0 - в слу-

    чае лжи.
    isalnum(ch) определена, когда isascii(ch) есть

    истина или когда ch является символом EOF.
    Возвращаемое isalnum вернет ненулевое значение, если ch-

    значение буква или цифра ('A'-'Z','a'-'z','0'-'9') .
    Переносимость isalnum доступна в UNIX системах.

    -----------------------------------------------------------------

    isalpha


    -----------------------------------------------------------------
    Назначение Макрос классификации символов.
    Синтаксис #include

    int isalpha(int ch);
    Прототип в io.h
    Замечания isalpha макрос, который классифицирует целые

    значения кода ASCII просмотром таблицы. Функция

    возвращает не ноль в случае истины и 0 - в слу-

    чае лжи.
    isalpha(ch) определена, когда isascii(ch) есть

    истина или когда ch является символом EOF.
    Возвращаемое isalpha вернет ненулевое значение, если ch-

    значение буква ('A'-'Z','a'-'z') .
    Переносимость isalpha доступна в UNIX системах. Она определе-

    на Керниганом и Ритчи.

    -----------------------------------------------------------------
    1   ...   62   63   64   65   66   67   68   69   ...   120


    написать администратору сайта