Funkce calloc () v knihovně C s programem PŘÍKLAD

Obsah:

Anonim

Co je calloc v C?

Funkce calloc () v C je funkce používaná k přidělení více bloků paměti, které mají stejnou velikost. Jedná se o funkci dynamické alokace paměti, která přiděluje paměťový prostor složitým datovým strukturám, jako jsou pole a struktury, a do paměti vrací ukazatel neplatnosti. Calloc znamená souvislou alokaci.

Funkce Malloc se používá k přidělení jednoho bloku paměťového prostoru, zatímco funkce calloc v C se používá k přidělení více bloků paměťového prostoru. Každý blok alokovaný calloc v programování C má stejnou velikost.

calloc () Syntaxe:

ptr = (cast_type *) calloc (n, size);
  • Výše uvedený příklad příkazu calloc v C se používá k přidělení n paměťových bloků stejné velikosti.
  • Po přidělení paměťového prostoru se všechny bajty inicializují na nulu.
  • Je vrácen ukazatel, který je aktuálně na prvním bajtu přiděleného paměťového prostoru.

Kdykoli dojde k chybě při přidělování paměťového prostoru, jako je nedostatek paměti, vrátí se nulový ukazatel, jak je znázorněno v níže uvedeném příkladu calloc.

Jak používat calloc

Níže uvedený program calloc v C vypočítá součet aritmetické sekvence.

#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ýsledek calloc v příkladu C:

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