Função calloc () na biblioteca C com o programa EXEMPLO

Índice:

Anonim

O que é calloc em C?

O 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 de memória dinâmica que aloca o espaço da 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.

A função Malloc é usada 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 tem o 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 para zero.
  • O ponteiro 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 é retornado, conforme mostrado no exemplo de calloc abaixo.

Como usar o Calloc

O programa calloc abaixo em C calcula a soma de uma seqüência aritmética.

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

Resultado do calloc no exemplo C:

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