FREE(3) Library Functions Manual FREE(3)

freefree allocated memory

#include <stdlib.h>

void free(void *ptr);

The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of IEEE Std 1003.1-2001 (“POSIX.1”) defers to the ISO C standard.

The free () function shall cause the space pointed to by ptr to be deallocated; that is, made available for further allocation. If ptr is a null pointer, no action shall occur. Otherwise, if the argument does not match a pointer earlier returned by the calloc(3), malloc(3), posix_memalign(3), realloc(3), or strdup(3) function, or if the space has been deallocated by a call to free () or realloc(3), the behavior is undefined.

Any use of a pointer that refers to freed space results in undefined behavior.

The free () function shall not return a value.

No errors are defined.

None.

There is now no requirement for the implementation to support the inclusion of <malloc.h>.

None.

None.

calloc(3), malloc(3), realloc(3), the Base Definitions volume of IEEE Std 1003.1-2001 (“POSIX.1”), <stdlib.h>

First released in Issue 1. Derived from Issue 1 of the SVID.

Reference to the () function is removed.

footer end

January 1, 2004 posix.fail