Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Realloc () Función en la biblioteca C:¿Cómo usar? Sintaxis y ejemplo

¿Qué es realloc()?

realloc() es una función de la biblioteca C para agregar más tamaño de memoria a los bloques de memoria ya asignados. El propósito de realloc en C es expandir los bloques de memoria actuales mientras se deja el contenido original como está. La función realloc() ayuda a reducir el tamaño de la memoria previamente asignada por las funciones malloc o calloc. realloc significa reasignación de memoria.

Sintaxis para realloc en C

ptr = realloc (ptr,newsize);

La declaración anterior asigna un nuevo espacio de memoria con un tamaño específico en la variable newsize. Después de ejecutar la función, el puntero volverá al primer byte del bloque de memoria. El nuevo tamaño puede ser mayor o menor que la memoria anterior. No podemos estar seguros de que el bloque recién asignado apunte a la misma ubicación que el bloque de memoria anterior. La función realloc en C copiará todos los datos anteriores en la nueva región. Se asegura de que los datos permanezcan seguros.

Por ejemplo:

#include <stdio.h>
int main () {
   char *ptr;
   ptr = (char *) malloc(10);
   strcpy(ptr, "Programming");
   printf(" %s,  Address = %u\n", ptr, ptr);

   ptr = (char *) realloc(ptr, 20); //ptr is reallocated with new size
   strcat(ptr, " In 'C'");
   printf(" %s,  Address = %u\n", ptr, ptr);
   free(ptr);
   return 0;
}

Cómo usar realloc()

El siguiente programa en C demuestra cómo usar realloc en C para reasignar la memoria.

#include <stdio.h>
#include <stdlib.h>
    int main() {
        int i, * ptr, sum = 0;
        ptr = malloc(100);
        if (ptr == NULL) {
            printf("Error! memory not allocated.");
            exit(0);
        }
        
        ptr = realloc(ptr,500);
    if(ptr != NULL)
           printf("Memory created successfully\n");
           
    return 0;

    }

Resultado del ejemplo de realloc en C:

Memory created successfully

Cada vez que la reasignación da como resultado una operación fallida, devuelve un puntero nulo y los datos anteriores también se liberan.


Lenguaje C

  1. ¿Cómo utilizamos el molibdeno?
  2. ¿Cómo utilizar Azure DevOps de forma eficaz?
  3. Cómo usar una función impura en VHDL
  4. Cómo usar una función en VHDL
  5. Cómo usar resina epoxi en un rompecabezas
  6. Función calloc() en la biblioteca C con programa EJEMPLO
  7. Función free () en la biblioteca C:¿Cómo usar? Aprende con el Ejemplo
  8. Cuándo y cómo utilizar un extintor de incendios
  9. Cómo utilizar un pulverizador de pintura de forma eficaz
  10. ¡¿Qué tan fácil es usar un termistor ?!
  11. Cómo usar una amoladora cortadora