¿Qué es mejor usar malloc, calloc o realloc?

Malloc ()

La función malloc () asigna dinámicamente memoria cuando es necesario. Esta función asigna el “byte” de memoria y devuelve un puntero al primer byte o NULL si hay algún tipo de error.

Sintaxis:

void * malloc (tamaño_t tamaño);

Calloc ()

La función calloc se usa para asignar almacenamiento a una variable mientras se ejecuta el programa. Esta función de biblioteca se invoca escribiendo calloc (num, size).

La diferencia importante entre la función malloc y calloc es que calloc inicializa todos los bytes en el bloque de asignación a cero y la memoria asignada puede / no ser contigua.

La función Calloc se usa para reservar espacio para matrices dinámicas.

Sintaxis:

void * calloc (size_t n, size_t size);

Realloc ()

Con la función realloc, puede cambiar el tamaño del área asignada una vez.

Sintaxis:

void * realloc (void * ptr, size_t size);

Calloc () es más seguro y proporciona más espacio para ubicar que malloc (). Por lo tanto, podemos decir que calloc () es mejor usar. Si bien realloc () se usa para asignar, una vez tienen el tamaño ya asignado por las funciones malloc () o calloc ().

Si desea saber más sobre esto de lo que debe visitar en el siguiente video, lo obtendrá todo:

No puede decir cuál es mejor usar porque todos estos se usan para diferentes tareas.

1: Malloc: se utiliza para asignar bloques de memoria o grupos de memoria.
2: Calloc: se usa para asignar celdas o bloques de memoria particionados.
3: Realloc: Realloc se utiliza para asignar memoria si se queda sin memoria, en otras palabras, para agregar espacio adicional previamente asignar memoria.

malloc y calloc son lo mismo excepto por los valores iniciales almacenados en ellos.
Por otro lado, realloc es completamente algo diferente. Es reasignación malloc o calloc.

Tal vez deberías buscar tutoriales en youtube para ayudarte a entender este concepto.