Funkcja calloc() w bibliotece C z PRZYKŁADOWYM programem
Co to jest calloc w C?
kaloc() w C jest funkcją używaną do przydzielania wielu bloków pamięci o tym samym rozmiarze. Jest to dynamiczna funkcja przydzielania pamięci, która przydziela przestrzeń pamięci do złożonych struktur danych, takich jak tablice i struktury, i zwraca pusty wskaźnik do pamięci. Calloc oznacza contiguous placement (przydział ciągły).
Funkcja Malloca służy do przydzielania pojedynczego bloku przestrzeni pamięci, podczas gdy funkcja calloc w C służy do przydzielania wielu bloków przestrzeni pamięci. Każdy blok przydzielony przez calloc w programowaniu C ma ten sam rozmiar.
calloc() Składnia:
ptr = (cast_type *) calloc (n, size);
- Powyższy przykład instrukcji calloc w C służy do alokacji n bloków pamięci o tym samym rozmiarze.
- Po przydzieleniu miejsca w pamięci wszystkie bajty są inicjowane na zero.
- wskaźnik który aktualnie znajduje się na pierwszym bajcie przydzielonej przestrzeni pamięci.
Ilekroć wystąpi błąd przy alokacji miejsca w pamięci, taki jak brak pamięci, zwracany jest wskaźnik zerowy, jak pokazano w poniższym przykładzie calloc.
Jak korzystać z Calloc
Poniższy program calloc w C oblicza sumę ciągu arytmetycznego.
#include <stdio.h>
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;
}
Wynik calloc w przykładzie C:
Building and calculating the sequence sum of the first 10 terms Sum = 45
