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

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

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

  • Назначение

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

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


    Скачать 3.41 Mb.
    НазваниеПодпрограммы классификации Подпрограммы преобразования
    АнкорСправочник по функциям С++.doc
    Дата07.05.2018
    Размер3.41 Mb.
    Формат файлаdoc
    Имя файлаСправочник по функциям С++.doc
    ТипДокументы
    #18992
    КатегорияИнформатика. Вычислительная техника
    страница32 из 120
    1   ...   28   29   30   31   32   33   34   35   ...   120

    ecvt


    -----------------------------------------------------------------
    Назначение Преобразование числа с плавающей точкой в стро-

    ку.
    Синтаксис char *ecvt(double value, int ndigit,

    int *decpt, int *sign);
    Замечания ecvt преобразует value в ноль-ограниченную

    строку из ndigit цифр и возвращает указатель на

    эту строку. Десятичная точка позиционируется

    относительно начала строки по значению decpt

    (отрицательное значение decpt относится к возв-

    ращаемым знакам слева). Если знак результата

    отрицателен, то значение слова, указываемого

    sign, является ненулевым, иначе оно равно 0.

    Цифра нижнего порядкя округляется.
    Возвращаемое ecvt возвращает указатель на статически распре-

    значение деленную строку цифр, содержимое которой пере-

    пиcывается при каждом вызове ecvt.
    Переносимость Доступна в системах UNIX.
    Смотри также atof, atoi, atol, fcvt, gcvt, printf

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

    ellipse


    -----------------------------------------------------------------
    Назначение Вычерчивание эллиптической дуги.
    Синтаксис #include

    void far ellipse(int x, int y, int stangle,

    int endangle, int xradius, int yradius);
    Прототип в graphics.h
    Замечания ellipse чертит эллиптическую дугу с центром в

    (x,y) и горизонтальной и вертикальной осями,

    заданными в xradius и yradius соответственно.

    ellipse чертит от stange до endangle. Если

    stangle=0, а endangle=360, то вызов ellipse

    приведет к вычерчиванию полного элипса.
    Углы для arc, ellipse и pieslice формируются

    против часовой стрелки. При этом 0 градусов со-

    ответствует 3 часам, 90 градусов соответствуют

    12 часам и т.д.
    Замечание: при вычерчивании дуги, окружности,

    эллипса и сектора для определения типа линии

    используется параметр thickness а не linestyle.
    Возвращаемое Нет.

    значение
    Переносимость Данная функция работает только на IBM PC и сов-

    местимых моделях при наличии соответствующих

    графических адаптеров.
    Смотри также arc, circle, fillellipse, getarccoords, sector
    Примеры Смотри arc

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

    _emit


    -----------------------------------------------------------------
    Назначение Вставка литерных значений в объектный код.
    Синтаксис void _emit(аргумент,...);
    Прототип в dos.h
    Замечания Функция _emit_ позволяет вставлять литеры не-

    посредственно в объектный код во время компили-

    рования прграммы. Она используется для генери-

    рования команд в машинном коде без применения

    ассемблирования.
    _emit_ может быть использована в интегрирован-

    ном окружении Турбо Си, когда нет возможности

    воспользоваться внутренним ассемблером.
    Обычно аргументом _emit_ является единственный

    байт кода машинной команды. Однако возможности

    фунуции позволяют строить более сложные коман-

    ды.
    Предупреждение! Данная функция может быть ис-

    пользована только программистами, очень хорошо

    владеющими машинным яазыком процессоров семейс-

    тва 80х86. Используя _emit_, вы можете сделать

    абсолютно все: разместить произвольные байты в

    командном коде вашей функции, произвольно изме-

    нять значения машинных регистров и ячеек памяти

    и т. д., Турбо Си не будет знать о ваших изме-

    нениях и не будет их контролировать, как это

    делается при использовании внутреннего ассембе-

    ра (например Турбо Си распознает использование

    регистров SI и DI), и если ваши изменения будут

    некорректны, ваша программа может привести к

    сбою машины.
    _emit_ позволяет использовать произвольное ко-

    личество аргументов. Аргументы функции _emit_,

    в отличие от агументов других библиотечных

    функций Турбо Си, никокда не преобразовываются

    к каким либо определенным типам данных.
    На аргументы функции _emit_ накладываются спе-

    циальные ограничения. Они должны позволить ини-

    циализировать статический объект памяти. А

    именно, целую или вещественную константу, или

    адрес статического объекта. Значения таких вы-

    рыжений записываются в объктном коде в точке

    вызова функции _emit_. В качестве аргументов

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

    автоматически распределяемой переменной и пара-

    метров плюс (или минус) константное смещение,

    для таких аргументов используется смещение ад-

    реса относительно значения регистра BP.
    Количество байт размещаемых, функцией _emit_

    определяется типом аргументов, за исключением

    следующих случаев:
    * Если целочисленная знаковая константа (напри-

    мер 0х90) находится в диапазоне от 0 до 255,

    она воспринимается как символ.
    * Если используется адрес автоматической пере-

    менной или параметра, записывается один байт,

    если смещение адреса относительно значения

    регистра BP находится в диапазоне от -128 до

    127; иначе записывается слово.
    Единичный байт записывается, например при вызо-

    ве:
    _emit_(0х90);
    dir> Если же вам необходимо записать слово а

    значение аргумента меньше 255, простейший спо-

    соб сделать это - приведение к беззнаковому ти-

    пу данных, как например:
    _emit_(0хB8, (unsigned)17);

    или

    _emit_(0хB8, 17u);
    Два и четыре байта адреса записываются в объек-

    тный код при использовании адресов void near *

    или void far * соответственно.
    Возвращаемое Нет.

    значение
    Переносимость _emit_ доступна только для процессоров семейс-

    тва 80х86.

    -----------------------------------------------------------------
    1   ...   28   29   30   31   32   33   34   35   ...   120


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