C stdlib free() Function
Example
Free memory when finished using it:
// Allocate memory for a number of items
int numItems = 15;
int *myArray = calloc(numItems, sizeof(int));
// Write into the memory
for(int i = 0; i < numItems; i++) {
myArray[i] = i + 1;
}
// Display the contents of the memory
for(int i = 0; i < numItems; i++) {
printf("%d ", myArray[i]);
}
// Free the memory
free(myArray);
myArray = NULL;
Try it Yourself »
Definition and Usage
The free() function deallocates dynamic memory. Dynamic memory is memory which was allocated by the malloc(), calloc() or realloc() functions.
The free() function is defined in the <stdlib.h> header file.
To learn more about memory deallocation, see our C Deallocate Memory tutorial.
Syntax
free(void * ptr);
Parameter Values
| Parameter | Description |
|---|---|
| ptr | A pointer to a block of dynamic memory. |