C library function - free()
Advertisements
Description
The C library function void free(void *ptr) deallocates the memory previously allocated by a call to calloc, malloc, or realloc.
Declaration
Following is the declaration for free() function.
void free(void *ptr)
Parameters
ptr -- This is the pointer to a memory block previously allocated with malloc, calloc or realloc to be deallocated.If a null pointer is passed as argument, no action occurs
Return Value
This function does not return any value.
Example
The following example shows the usage of free() function.
#include <stdio.h>
#include <stdlib.h>
int main()
{
char *str;
/* Initial memory allocation */
str = (char *) malloc(14);
strcpy(str, "tutorialspoint");
printf("String = %s, Address = %u\n", str, str);
/* Reallocating memory */
str = (char *) realloc(str, 4);
strcat(str, ".com");
printf("String = %s, Address = %u\n", str, str);
/* Deallocate allocated memory */
free(str);
return(0);
}
Let us compile and run the above program, this will produce the following result:
String = tutorialspoint, Address = 355090448 String = tutorialspoint.com, Address = 355090448