Calloc
calloc
Функция Выделяет оперативную память.
Синтаксис #include
void * calloc(size_t nitems, size_t size);
Файл, содержащий stdlib.h,alloc.h прототип
Описание calloc обеспечваеит доступ к памяти heap. heap доступен для динамического распределения блоков памяти переменной длины. Многие структуры данных, например, деревья и списки, используют распределение памяти heap.
Все пространство памяти между концом сегмента данных и верхушкой программного стека доступно для использования в моделях памяти small (tiny, small, medium), кроме небольшой области в самой верхней части стека. Это пространство необходимо для роста стека прикладной программы и плюс не- большая часть, используемая DOS.
В моделях памяти типа large (compact, large, huge) все пространство за границей программного стека до конца физической памяти доступно для heap.
calloc выделяет блок памяти размером nitems x size. Блок обнуляется. Если размер блока превыша- ет 64К то нужно использовать функцию farcalloc.
Возвращаемое calloc возвращает указатель на выделенный блок. значение calloc возвращает NULL, если недостаочно памяти для выделения нового блока, или nitems или size равны 0.
Переносимость Поддерживается в системах UNIX и определена в ANSI C. Описана в Керниган и Риччи.
Смотрите также
Пример:
#include
#include
#include
int main(void) { char *str = NULL; /* выделить память для строки */ str = calloc(10,sizeof(char)); if(str) { /* скопировать в строку "Hello" */ strcopy(str,"Hello"); /* вывести строку */ printf("Строка : %s\n",str); /* освободить память */ free(str); } else { printf("Недостаточно памяти\n"); } return(0); }