Libchecker:xcalloc

From EjudgeWiki
Revision as of 08:08, 22 August 2008 by Cher (talk | contribs) (New page: Навигация: Система ejudge/Проверяющие программы/libchecker/Функции/[[Libchecker:Работа с пам...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Навигация: Система ejudge/Проверяющие программы/libchecker/Функции/Работа с памятью/xcalloc

Функция является надстройкой над стандартной функцией calloc

void *xcalloc(size_t nmemb, size_t size);

В области динамической памяти (куче) выделяется область памяти размера nmemb*size и возвращается указатель на ее начало. Если область памяти указанного размера выделить не удается, проверяющая программа немедленно завершается со внутренней ошибкой проверки. Таким образом, проверяющая программа может быть уверена, что возвращаемый функцией xcalloc указатель никогда не равен NULL. Выделенная область памяти инициализируется нулями. Если nmemb*size равно 0, то поведение функции не определено и соответствует поведению функции calloc. Выделенная память может быть освобождена с помощью вызова функции free стандартной библиотеки.