Função calloc() na biblioteca C com programa EXEMPLO
O que é calloc em C?
O método da calloc () em C é uma função usada para alocar vários blocos de memória com o mesmo tamanho. É uma função de alocação dinâmica de memória que aloca espaço de memória para estruturas de dados complexas, como arrays e estruturas, e retorna um ponteiro vazio para a memória. Calloc significa alocação contígua.
Função Malloc é usado para alocar um único bloco de espaço de memória enquanto a função calloc em C é usada para alocar vários blocos de espaço de memória. Cada bloco alocado pelo calloc na programação C é do mesmo tamanho.
calloc() Sintaxe:
ptr = (cast_type *) calloc (n, size);
- O exemplo de instrução acima de calloc em C é usado para alocar n blocos de memória do mesmo tamanho.
- Depois que o espaço de memória é alocado, todos os bytes são inicializados em zero.
- O método da apontador que está atualmente no primeiro byte do espaço de memória alocado é retornado.
Sempre que houver um erro na alocação de espaço de memória, como falta de memória, um ponteiro nulo será retornado conforme mostrado no exemplo de calloc abaixo.
Como usar calloc
O programa calloc abaixo em C calcula a soma de uma sequência aritmética.
#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;
}
Resultado do calloc no exemplo C:
Building and calculating the sequence sum of the first 10 terms Sum = 45
