Descripción
La función de la biblioteca C void free(void *ptr) desasigna la memoria previamente asignada por una llamada a calloc, malloc o realloc.
Declaración
A continuación se muestra la declaración de la función free ().
void free(void *ptr)
Parámetros
Valor devuelto
Esta función no devuelve ningún valor.
Ejemplo
El siguiente ejemplo muestra el uso de la función free ().
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main () {
char *str;
/* Initial memory allocation */
str = (char *) malloc(15);
strcpy(str, "tutorialspoint");
printf("String = %s, Address = %u\n", str, str);
/* Reallocating memory */
str = (char *) realloc(str, 25);
strcat(str, ".com");
printf("String = %s, Address = %u\n", str, str);
/* Deallocate allocated memory */
free(str);
return(0);
}
Compilemos y ejecutemos el programa anterior que producirá el siguiente resultado:
String = tutorialspoint, Address = 355090448
String = tutorialspoint.com, Address = 355090448