Función calloc() en la biblioteca C con programa EJEMPLO

¿Qué es calloc en C?

La calloc () En C, es una función que se utiliza para asignar varios bloques de memoria que tienen el mismo tamaño. Es una función de asignación de memoria dinámica que asigna el espacio de memoria a estructuras de datos complejas, como matrices y estructuras, y devuelve un puntero vacío a la memoria. Calloc significa asignación contigua.

función malloc se usa para asignar un solo bloque de espacio de memoria, mientras que la función calloc en C se usa para asignar múltiples bloques de espacio de memoria. Cada bloque asignado por el calloc en la programación C es del mismo tamaño.

calloc() Sintaxis:

ptr = (cast_type *) calloc (n, size);
  • El ejemplo anterior de calloc en C se utiliza para asignar n bloques de memoria del mismo tamaño.
  • Una vez asignado el espacio de memoria, todos los bytes se inicializan a cero.
  • La puntero que se encuentra actualmente en el primer byte del espacio de memoria asignado.

Siempre que hay un error al asignar espacio de memoria, como escasez de memoria, se devuelve un puntero nulo como se muestra en el siguiente ejemplo de calloc.

Cómo usar calloc

El siguiente programa calloc en C calcula la suma de una secuencia 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 del calloc en el ejemplo de C:

 
Building and calculating the sequence sum of the first 10 terms
Sum = 45