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

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

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

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

  • Назначение

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


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

    lock


    -----------------------------------------------------------------
    Назначение Устанавливает блокировки разделения файлов.
    Синтаксис int lock( int handle, long offset,long length);
    Прототип в io.h
    Замечания lock обеспечивает взаимодействие с механизмом

    разделения файлов MS-DOS 3.x.
    lock может быть наложена на произвольную непе-

    рекрывающуюся область любого файла. Програм-

    ма, пытающаяся читать или писать в заблокиро-

    ванную бласть, будет пытаться повторить опера-

    цию 3 раза. Если все три попытки неудачны, то

    операция заканчивается ошибкой.
    Возвращаемое lock возвращает 0 при удаче и -1 при ошибке.

    значение
    Переносимость Уникальна для MS-DOS 3.х. Более ранние версии

    MS-DOS не поддерживают этот вызов.
    Смотри также open, sopen, unlock

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

    log


    -----------------------------------------------------------------
    Назначение Логарифмическая функция ln(x).
    Синтаксис double log(double x);
    Прототип в math.h
    Замечания log возвращает ln(x).
    Если аргумент х, посланный в log, меньше или

    равен 0, то errno устанавливается в
    EDOM - ошибка области
    При возникновении данной ошибки log возвращает

    отрицательное HUDE_VAL.
    Обработка ошибок для log может быть модифициро-

    вана с помощью функции matherr.
    Переносимость log доступна в системах UNIX и совместима с

    ANSI Cи.
    Cмотри также exp, log10, sqrt

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

    log10


    -----------------------------------------------------------------
    Назначение Логарифмическая функция lg(x).
    Синтаксис double log10(double x);
    Прототип в math.h
    Замечания log10 возвращает log10(x) (логарифм по основа-

    нию 10).
    Если аргумент х, посланный в log10, меньше или

    равен 0, то errno устанавлиается в
    EDOM - ошибка области
    При возникновении данной ошибки log10 возвраща-

    ет отрицательное HUDE_VAL.
    Обработка ошибок для log10 может быть модифици-

    рована с помощью функции matherr.
    Переносимость log10 доступна в системах UNIX и совместима с

    ANSI Cи.
    Cмотри также exp, log

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

    longjmp


    -----------------------------------------------------------------
    Назначение Выполняет нелокальный переход.
    Синтаксис #include

    void longjmp(jmp_buf env, int val);
    Прототип в setjmp.h
    Замечания Вызов longjmp восстанавливает сохраненное

    (функцией setjmp) состояние задачи и возвраща-

    ется таким образом,что кажется, что setjmp

    возвратилось со значением val.
    Состояние задачи это:
    * все регистры сегментов(CS,DS,ES,SS)

    * регистровые переменные(SI,DI)

    * указатель стека(SP)

    * указатель ограничения(FP)

    * флаги
    Состояние задачи достаточно информативно, чтобы

    setjmp и longjmp использовать для вызова соп-

    рограмм. Программа, которая вызывает setjmp и

    устанавливает env, должна быть активной и не

    завершаться, пока longjmp не завершится. Если

    это случится, то результат неопределен.
    Эти программы полезны для работы с ошибками и

    исключительными ситуациями, обрабатываемыми

    подпрограммами низкого уровня.
    longjmp не может вернуть 0; если передан val=0,

    longjmp вернет 1.
    Возвращаемое Нет.

    значение
    Переносимость longjmp доступна в системах UNIX и совместима с

    ANSI Cи.
    Смотри также setjmp, signal
    Пример

    #include

    #include
    jmp_buf jumper;
    main()

    {

    int value;

    value = setjmp(jumper);

    if (value != 0)

    {

    printf("Longjmp со значением %d\n", value);

    exit(value);

    }

    print("Вызов подпрограммы... \n");

    subroutine();

    }
    subroutine()

    {

    longjmp(jumper,1);

    }
    Результат выполнения программы
    Вызов подпрограммы...

    Longjmp со значением 1

    -----------------------------------------------------------------
    1   ...   67   68   69   70   71   72   73   74   ...   120


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