Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 1 марта!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Возможности языков семейства Си по истине безграничны, однако, в этой свободе кроются и недостатки: всегда нужно программисту держать ухо востро и контроллировать "переполнение буфера", чтобы потом программа не вылетала в "синий экран" на массе разнообразных версий Windows и железа у пользователей. Те же крэкеры и реверсеры специально ищут в коде программ на Си уязвимости, куда можно подсадить любой вирусный код, об этом более подробно автор рассказывал в своём видеокурсе здесь. Я там многое узнал и теперь мой код стал значительно более безопасный.

Функция Возвращает код ошибки последней неудачно

 
                    выполненной графической операции.
 
 
 
 Синтаксис          #include <graphics.h>
 
                    int far graphresult(void);
 
 
 
 Файл, содержащий   graphics.h
 
 прототип
 
 
 
 Описание           graphresult возвращает    код   ошибки   последней
 
                    графической операции,  которая сообщила об ошибке,
 
                    и устанавливает уровень ошибки в grOk.
 
 
 
                    В следующей   таблице   приведены   коды   ошибок,
 
                    возвращаемые    graphresult.   Перечисляемый   тип
 
                    graph_errors определяет ошибки в  данной  таблице.
 
                    graph_errors объявлен в graphics.h.
 
 
 
      -----------------------------------------------------------
 
      код       константа         соответствующая строка
 
      ошибки    graphics_errors    сообщения об ошибке
 
      -----------------------------------------------------------
 
        0    grOk                  нет ошибок
 
       -1    grNoInitGraph         BGI-графика не установлена
 
                                   (используйте initgraph)
 
       -2    grNotDetect           не обнаружены графические аппа-
 
                                   ратные средства
 
       -3    grFileNotFound        файл драйвера не найден
 
       -4    grInvalidDriver       неисправный файл драйвера
 
       -5    grNoLoadMem           нет места в памяти для загрузки
 
                                   драйвера
 
       -6    grNoScanMem           выход за память при сканирующем
 
                                   заполнении
 
       -7    grNoFloodMem          выход за память при лавинном за-
 
                                   полнении
 
       -8    grFontNotFound        файл со шрифтом не найден
 
       -9    grNoFontMem           нет места в памяти для загрузки
 
                                   шрифта
 
       -10   grInvalidMode         неверный графический режим для
 
                                   выбранного драйвера
 
       -11   grError               графическая ошибка
 
       -12   grIOError             графическая ошибка ввода/вывода
 
       -13   grInvalidFont         неверный шрифтовый файл
 
       -14   grInvalidFontNum      неверный номер шрифта
 
       -15   grInvalidDeviceNum    неверный номер устройства
 
       -18   grInvalidVersion      неверный номер версии
 
      ------------------------------------------------------------
 
 
 
                    Заметим, что   переменные,  полученные  от  graph-
 
                    result,  переустанавливаются в 0 после  завершения
 
                    вызова  graphresult.  Поэтому необходимо сохранять
 
                    значения,  полученные   от   graph-   result,   во
 
                    временных переменных и затем их использовать.
 
 
 
 Возвращаемое       graphresult возвращает текущий номер графи-
 
 значение           ческой ошибки - целое число от -15 до 0;
 
                    grapherrormsg возвращает   указатель   на  строку,
 
                    связанную  со  значением,  возвращаемым   функцией
 
                    graphresult.
 
 
 
 Переносимость      Функция уникальна для Borland  C++.  Она  работает
 
                    только на компьютерах IBM PC и совместимых с ними,
 
                    оснащенных дисплейными адаптерами, поддерживающими
 
                    графический  режим.  Функция   не   совместима   с
 
                    Windows.
 
 
 
 Смотрите также      detectgraph, drawpoly, fillpoly, floodfill,
 
                     grapherrormsg, initgraph, pieslice,
 
                     registerbgidriver, registerbgifont,
 
                     setallpalette, setcolor, setfillstyle,
 
                     setgraphmode, setlinestyle, setpalette,
 
                     settextjustify, settextstyle, setusercharsize,
 
                     setviewport, setvisualpage.
 
 
 
 Пример:
 
 
 
 #include <graphics.h>
 
 #include <stdlib.h>
 
 #include <stdio.h>
 
 #include <conio.h>
 
 
 
 int main(void)
 
 {
 
 /* требуется автоопределение */
 
 int graphdriver = DETECT, gmode, errorcode;
 
 
 
 /* инициализация графики и локальных переменных */
 
 initgraph(&graphdriver,&gmode,"");
 
 
 
 /* получение результата инициализации */
 
 errorcode = graphresult();
 
 if(errorcode != grOk)  /* если ошибка */
 
 {
 
    printf("Ошибка :%s\n",grapherrormessage(errorcode));
 
    printf("Для останова нажмите любую клавишу\n");
 
    getch();
 
    exit(1);  /* завершение с кодом ошибки */
 
 }
 
 line(o,o,getmaxx(),getmaxy());
 
 /* очистка */
 
 getch();
 
 closegraph();
 
 return 0;
 
 }

<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS