CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
farheapfillfree
farheapfillfree
Функция Заполняет свободные блоки глобальной динамической области памяти константным значением. Синтаксис #include<alloc.h> int farheapfillfree(unsigned int fillvalue); Файл, содержащий alloc.h прототип Описание ???????????????? Возвращемое При ошибке возращется значение < 0, при успешном значение завершение возвращается значение > 0. Если нет глобальной динамической области памяти, то возвращается значение _HEAPEMPTY (1). Если глобальный heap проверен, то возвращается _HEAPOK (2). Если память запорчена, то возвращается _HEAPCORRUPT(-1). Переносимость farheapfillfree уникальна для DOS. Функция не совместима с Windows. Смотрите также farheapcheckfree, heapfillfree Пример: #include<mem.h> #include<stdio.h> #include<alloc.h> #define NUM_PTRS 10 #define NUM_BYTES 16 int main(void) { char far *array[NUM_PTRS]; int i,j; int res; for(i=0; i<NUM_PTRS; i++) (array[i] = farmalloc(NUM_BYTES); for(i=0; i<NUM_PTRS; i+=2) farfree(array[i]); if(heapfillfree(1) < 0) { printf(" Память запорчена\n"); return 1; } for(i=0; i<NUM_PTRS; i+=2) for(j=0; j<NUM_BYTES; j++) array[i][j]=0; res = farheapcheckfree(1); if(res<0) switch(res) { case _HEAPCORRUPT: printf(" Память запорчена\n"); return 1; case _BADVALUE: printf("Неверное содержимое пустой памяти \n"); return 1; default: printf(" Нераспознаваемая ошибка\n"); return 1; } printf("Все нормально\n"); return 0; }