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

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


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

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



Программисты долго мучаются с кодом прогаммы, изучают С++, WinAPI функции, MSDN. Потом пишут банальную систему защиты или навешивают банальный протектор, а крэкеры и реверсеры справляются с такой защитой за 5 минут. В итоге, продажи программы почти нулевые. Чтобы такого не допустить, тут самому надо немного поднабрать опыта отладки, реверсинга, тот же отладчик Ollydbg изучить или дизассемблер IDA Pro. Но где искать по крохам эти знания? Нет, конечно можно годами "методом тыка" разбираться, но куда быстрее видеокурс специальный посмотреть. Вот тут он есть: ссылка. Автор курса с большим опытом и объясняет понятно, я из этого курса много узнал про то как работает компьютер, процессор, про инструменты специальные и как с ними работать. Мои коллеги программисты на работе ничего такого и не знают, теперь я им нос утру.

settextjustify

 
 Функция            Устанавливает выравнивание текста для графических
 
                    функций.
 
 
 
 Синтаксис          #include <graphics.h>
 
                    void far settextjustify(int horiz,int vert);
 
 
 
 Файл, содержащий   graphics.h
 
 прототип
 
 
 
 Описание           Выводимый текст,  после обращения к settextjustify
 
                    будет   выравнен   горизантально  или  вертикально
 
                    относительно текущей позиции  (СР).  По  умолчанию
 
                    устанавливается выравнивание текста LEFT_TEXT (для
 
                    горизонтального) и TOP_TEXT  (для  вертикального).
 
                    Перечисленные  в graphics.h text_just представляют
 
                    собой  имена  для  установки  horiz  и  vert   для
 
                    передачи в settextjustify.
 
 
 
                    -------------------------------------------
 
                     Название      Знач.       Описание
 
                    -------------------------------------------
 
                     LEFT_TEXT        0      horiz
 
                     CENTER_TEXT      1      horiz и vert
 
                     RIGHT_TEXT       2      horiz
 
                     BOTTOM_TEXT      0      vert
 
                     TOP_TEXT         2      vert
 
                    -------------------------------------------
 
 
 
                    Если horiz  равно  LEFT_TEXT  и  direction   равно
 
                    HORIZ_DIR,  то элемент x CP продвигается с помощью
 
                    textwidth(string) после вызова outtext(string).
 
 
 
                    settextjustify работает  с   текстами   выводимыми
 
                    функцией  outtext  и  не может быть использована в
 
                    текстовом  режиме   и   с   потокоориентированными
 
                    функциями.
 
 
 
 Возвращаемое       Если в settextjustify передается неправильный
 
 значение           ввод, то graphresult возвратит -11, а текущее
 
                    выравнивание текста останется без изменений.
 
 
 
 Переносимость      Функция уникальна для Borland  C++.  Она  работает
 
                    только на компьютерах IBM PC и совместимых с ними,
 
                    оснащенных дисплейными адаптерами, поддерживающими
 
                    графический   режим.   Функция   не  совместима  с
 
                    Windows.
 
 
 
 Смотрите также     gettextsettings, graphresult, outtext,
 
                    settextstyle.
 
 
 
 Пример:
 
 
 
 #include <graphics.h>
 
 #include <stdlib.h>
 
 #include <stdio.h>
 
 #include <conio.h>
 
 
 
 /* прототип функции */
 
 void xat(int x,int y);
 
 
 
 /* горизонтальное выравнивание текста */
 
 char *hjust[] = {"LEFT_TEXT",
 
                  "CENTER_TEXT",
 
                  "RIGTH_TEXT"};
 
 
 
 /* вертикальное выравнивание текста */
 
 char *vjust[] = {"BOTTOM_TEXT",
 
                  "CENTER_TEXT",
 
                  "TOP_TEXT"};
 
 
 
 int main(void)
 
 {
 
 /* Запрос автоопределения */
 
 int graphdriver = DETECT, gmode, errorcode;
 
 int midx,midy,hj,vj;
 
 char msg[80];
 
 
 
 /* инициализация графики и локальных переменных */
 
 initgraph(&graphdriver,&gmode,"");
 
 
 
 /* получение результата инициализации */
 
 errorcode = graphresult();
 
 if(errorcode != grOk)  /* если ошибка */
 
 {
 
    printf("Ошибка :%s\n",grapherrormessage(errorcode));
 
    printf("Для останова нажмите любую клавишу\n");
 
    getch();
 
    exit(1);  /* завершение с кодом ошибки */
 
 }
 
 midx = getmaxx()/2;
 
 midy = getmaxy()/2;
 
 /* цикл по выравниваниям */
 
 for(hj=LEFT_TEXT;hj<RIGHT_TEXT;hj++)
 
    for(vj=LEFT_TEXT;vj<RIGHT_TEXT;vj++)
 
    {
 
       cleardevice();
 
       /* установить выравнивание текста */
 
       settextjustify(hj,vj);
 
       /* создать строку сообщений */
 
       sprintf(msg,"%s %s",hjust[hi],vjust[vj]);
 
       /* создать крестик на экране */
 
       xat(midx,midy);
 
       /* вывести сообщение */
 
       outtextxy(midx,midy,msg);
 
       getch();
 
    }
 
 /* очистка */
 
 getch();
 
 closegraph();
 
 return 0;
 
 }
 
 /* функция рисует крестик по координатам x и y */
 
 void xat(int x, int y)
 
 {
 
    line(x-4,y,x+4,y);
 
    line(x,y-4,x,y+4);
 
 }


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

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




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



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


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