Funkcia calloc () v knižnici C s programovým PRÍKLADOM

Obsah:

Anonim

Čo je calloc v C?

Calloc () v C je funkcia slúži na pridelenie viac blokov pamäte, ktoré majú rovnakú veľkosť. Jedná sa o funkciu dynamického prideľovania pamäte, ktorá vyhradzuje pamäťový priestor zložitým dátovým štruktúram, ako sú polia a štruktúry, a do pamäte vracia ukazovateľ neplatnosti. Calloc znamená súvislé prideľovanie.

Funkcia Malloc sa používa na pridelenie jedného bloku pamäťového priestoru, zatiaľ čo funkcia calloc v C sa používa na pridelenie viacerých blokov pamäťového priestoru. Každý blok alokovaný programom calloc v programovaní C má rovnakú veľkosť.

calloc () Syntax:

ptr = (cast_type *) calloc (n, size);
  • Vyššie uvedený príklad príkazu calloc v C sa používa na pridelenie n pamäťových blokov rovnakej veľkosti.
  • Po pridelení pamäťového priestoru sa všetky bajty inicializujú na nulu.
  • Ukazovateľ, ktorý je momentálne na prvom bajte prideleného pamäťového priestoru, sa vráti.

Kedykoľvek dôjde k chybe pri prideľovaní pamäťového priestoru, ako je nedostatok pamäte, vráti sa nulový ukazovateľ, ako je to znázornené v nasledujúcom príklade calloc.

Ako používať calloc

Program calloc uvedený nižšie v C počíta súčet aritmetickej postupnosti.

#include int main() {int i, * ptr, sum = 0;ptr = calloc(10, sizeof(int));if (ptr == NULL) {printf("Error! memory not allocated.");exit(0);}printf("Building and calculating the sequence sum of the first 10 terms \ n ");for (i = 0; i < 10; ++i) { * (ptr + i) = i;sum += * (ptr + i);}printf("Sum = %d", sum);free(ptr);return 0;}

Výsledok calloc v príklade C:

Building and calculating the sequence sum of the first 10 termsSum = 45