---
name: "autfreeheap"
section: "3"
platform: "linux"
package: "alliance"
version: "5.1.1-3"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/autfreeheap"
---

# autfreeheap(3)

releases a memory block, and put it on the heap.

## NAME

autfreeheap - releases a memory block, and put it on the heap.

## SYNOPSYS

```
#include "aut101.h"
void autfreeheap( Pointer, Size )
   char         ∗Pointer;
   unsigned int Size;
```

## PARAMETERS

- *Pointer*

  Pointer to be given back to the heap.

- *Size*

  Size of the block previously allocated by *autallocheap*.

## DESCRIPTION

**autfreeheap** frees a pointer and puts the block back to the heap. Its use is necessary to free memory blocks, previously allocated by *autallocheap*.\

## RETURN VALUE

**autfreeheap** returns nothing.

## EXAMPLE

```
#include "aut101.h"
typedef struct bipointer
{
  struct bipointer ∗NEXT;
  void             ∗DATA;
} bipointer;
bipointer ∗addbipointer( Data );
  void ∗Data;
{
  bipointer ∗Bp = (bipointer ∗)autallocheap( sizeof( bipointer ) );
  Bp->DATA = Data;
  return Bp;
}
void delbipointer( Bp );
  bipointer ∗Bp;
{
  autfreeheap( Pointer, sizeof( bipointer ) );
}
```

## SEE ALSO

[**aut**(1)](/aut/1.md), **[autresizeblock(3)](/autresizeblock/3.md),** **[autallocheap(3)](/autallocheap/3.md),** **[autallocblock(3)](/autallocblock/3.md),** **[autfreeblock(3)](/autfreeblock/3.md).**
