_Graphfr
_graphfreemem
Функция Пользователь освобождает графическую память.
Синтаксис #include
void far _graphfreemem(void var *ptr,unssigned size);
Файл, содержащий graphics.h прототип
Описание Графическая библиотека вызывает _graphfreemem для освобождения памяти, ранее занятой с помощью _graphgetmem. Вы можете управлять распределением памяти графической библиотеки посредством просто- го определения вашей собственной версии _graphfreemem (вы должны определить ее так, как показано в описании). Начальная версия этой прг- раммы просто вызывает free.
Возвращаемое Нет. значение
Переносимость Функция уникальна для Turbo C++. Она работает только на компьютерах IBM PC и совместимых с ни- ми, оснащенных дисплейными адаптерами, поддержи- вающими графический режим.
Смотрите также
Пример:
#include
#include
#include
#include
#include
#define NONSENSE -50
int main(void) { /* Инициация ошибки */ int graphdriver = NONSENSE, gmode, errorcode; int midx,midy;
/* обнуление текстового экрана */ clrscr(); printf("Для инициализацмм графики нажмите любую клавишу..."); getch(); clrscr();
/* инициализация графики и локальных переменных */ initgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */ errorcode = graphresult();
/* выдать соответствующее ошибке сообщение */ if(errorcode != grOk) /* если ошибка */ { printf("Ошибка :%s\n",grapherrormsg(errorcode)); printf("Для останова нажмите любую клавишу\n"); getch(); exit(1); /* завершение с кодом ошибки */ } midx = getmaxx()/2; midy = getmaxy()/2; /* вывести сообщение */ settextjustify(CENTER_TEXT,CENTER_TEXT); outtextxy(midx,midy,"Для выхода из графического режима нажмите любую клавишу "); /* очистка */ getch(); closegraph(); return 0; } /* вызывается ядром графической системы для выделения памяти */ void far *far _graphgetmem(unsigned size) { printf("Вызвана _graphgetmem для выделения %d байт\n",size); printf("Нажмите любую клавишу:"); getch(); printf("\n"); /* выделить память */ return farmalloc(size); } /* вызывается ядром графической системы для освобождения памяти */ void far _graphfreemem(void far *ptr, unsigned size) { printf("Вызвана _graphfreemem для освобождения %d байт\n",size); printf("Нажмите любую клавишу:"); getch(); printf("\n"); /* освободить память */ return farfree(ptr); }