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

ВИДЕОКУРС ВЗЛОМ
выпущен 10 декабря!


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

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



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

Функция Возвращает цвет заданной точки.

 
 
 
 Синтаксис          #include <graphics.h>
 
                    unsigned far getpixel(int x, int y);
 
 
 
 Файл, содержащий   graphics.h
 
 прототип
 
 
 
 Описание           getpixel получает цвет точки с координатами (x,y).
 
 
 
 Возвращаемое       Возвращает цвет заданного пикселя.
 
 значение
 
 
 
 Переносимость      Функция уникальна для Borland  C++.  Она  работает
 
                    только на компьютерах IBM PC и совместимых с ними,
 
                    оснащенных дисплейными адаптерами, поддерживающими
 
                    графический   режим.   Функция   не  совместима  с
 
                    Windows.
 
 
 
 Смотрите также     getimage, putpixel.
 
 
 
 Пример:
 
 
 
 #include <graphics.h>
 
 #include <stdlib.h>
 
 #include <stdio.h>
 
 #include <conio.h>
 
 #include<dos.h>
 
 
 
 #define PIXEL_COUNT 1000
 
 #define DELAY_TIME 100 /* в миллисекундах */
 
 
 
 int main(void)
 
 {
 
 /* Запрос автоопределения */
 
 int graphdriver = DETECT, gmode, errorcode;
 
 int x,y,i,color,maxx,maxy,maxcolor,seed;
 
 
 
 /* инициализация графики и локальных переменных */
 
 initgraph(&graphdriver,&gmode,"");
 
 
 
 /* получение результата инициализации */
 
 errorcode = graphresult();
 
 if(errorcode != grOk)  /* если ошибка */
 
 {
 
    printf("Ошибка :%s\n",grapherrormessage(errorcode));
 
    printf("Для останова нажмите любую клавишу\n");
 
    getch();
 
    exit(1);  /* завершение с кодом ошибки */
 
 }
 
 maxx = getmaxx();
 
 maxy = getmaxy();
 
 maxcolor = getmaxcolor()+1;
 
 while(!kbhit())
 
 {
 
 /* сбросить генератор случайных чисел */
 
 seed = random(32767);
 
 stand(seed);
 
 for(i=0;i<PIXEL_COUNT;i++)
 
 {
 
    x = random(maxx);
 
    y = random(maxy);
 
    color = random(maxcolor);
 
    putpixel(x,y,color);
 
 }
 
 delay(DELAY_TIME);
 
 srand(seed);
 
 for(i=0;i<PIXEL_COUNT;i++)
 
 {
 
    x = random(maxx);
 
    y = random(maxy);
 
    color = random(maxcolor);
 
    if(color == getpixel(x,y);
 
      putpixel(x,y,0);
 
 }
 
 }
 
 /* очистка */
 
 getch();
 
 closegraph();
 
 return 0;
 
 }


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

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




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



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


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