Программирование на C и C++

Онлайн справочник программиста на C и C++

farfree

void farfree(void far *ptr)

Прототип: 
Описание: 

Эта функция не определена стандартом ANSI С.

Функция farfree() используется для освобождения памяти, предварительно выделенной в куче с использованием вызова функции farmalloc() или farcalloc().

Необходимо проявлять большую осторожность при вызове функции farfree() с тем, чтобы пере­давался только действительный указатель на дальнюю кучу. В противном случае дальняя куча может быть повреждена. Нельзя освободить указатель на дальнюю кучу с использованием функ­ции free(). И наоборот, указатель на ближнюю кучу не может быть освобожден с использованием функции farfree().

Пример: 
Следующая программа выделяет, а затем освобождает область памяти размером в 100 байт в дальней куче:
#include <alloc.h>
int main(void)
{
char far *p;
p = (char far *) farmalloc(100);
/* освободить только в случае, если не было ошибок при выделении памяти */
if (р) farfrее(р);
return 0;
}