Calloc () Funkcija u biblioteci C s PRIMJEROM programa

Sadržaj:

Anonim

Što je calloc u C?

Calloc () u C funkcija koristi izdvojiti više blokova memorije imaju istu veličinu. To je funkcija dinamičke dodjele memorije koja dodjeljuje memorijski prostor složenim podatkovnim strukturama kao što su nizovi i strukture i vraća prazninski pokazivač u memoriju. Calloc je susjedna alokacija.

Malloc funkcija koristi se za dodjelu jednog bloka memorijskog prostora, dok se calloc funkcija u C koristi za dodjelu više blokova memorijskog prostora. Svaki blok koji dodijeli calloc u C programiranju je iste veličine.

sintaksa calloc ():

ptr = (cast_type *) calloc (n, size);
  • Gornji primjer izjave calloc u C koristi se za dodjelu n memorijskih blokova iste veličine.
  • Nakon dodjele memorijskog prostora, svi se bajtovi inicijaliziraju na nulu.
  • Vraćen je pokazivač koji je trenutno u prvom bajtu dodijeljenog prostora memorije.

Kad god dođe do pogreške pri dodjeli memorijskog prostora, poput nedostatka memorije, vraća se nulti pokazivač kao što je prikazano u donjem primjeru calloc-a.

Kako koristiti calloc

Program kaloka u nastavku u C izračunava zbroj aritmetičkog niza.

#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;}

Rezultat calloc-a u primjeru C:

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