Função da biblioteca C - grátis ()

Descrição

A função da biblioteca C void free(void *ptr) desaloca a memória alocada anteriormente por uma chamada para calloc, malloc ou realloc.

Declaração

A seguir está a declaração da função free ().

void free(void *ptr)

Parâmetros

  • ptr- Este é o ponteiro para um bloco de memória previamente alocado com malloc, calloc ou realloc a ser desalocado. Se um ponteiro nulo é passado como argumento, nenhuma ação ocorre.

Valor de retorno

Esta função não retorna nenhum valor.

Exemplo

O exemplo a seguir mostra o uso da função 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);
}

Vamos compilar e executar o programa acima que produzirá o seguinte resultado -

String = tutorialspoint, Address = 355090448
String = tutorialspoint.com, Address = 355090448