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

# mbkrealloc(3)

mbk memory reallocator

## NAME

mbkrealloc - mbk memory reallocator

## SYNOPSYS

```
#include "mut.h"
void ∗mbkrealloc(pt, bytes)
void ∗pt;
unsigned int bytes;
```

## PARAMETERS

- *pt*

  Pointer to an already allocated area, allocated using **mbkallocP**

- *bytes*

  **Number of memory bytes to be contiguously allocated**

## DESCRIPTION

**mbkrealloc returns a block of** *bytes* **length, for any purpose.** **It increases or decreases the size of the area, and return a pointer to** **the new block.** **It is now a day only an encapsulation of the system realloc function,** **but may evolve to a special allocator in the future. Its use is strongly** **encouraged.**

- **Remark :**

  **a global variable, long mbkrealloc\_stat, updates the number of allocated** **bytes, and may be accessed by anyone to see the amount of allocated memory.**

## RETURN VALUE

**mbkrealloc returns a pointer to a** *bytes* **long block.**

## ERROR

**"∗∗∗ mbk error ∗∗∗ mbkrealloc impossible : not enough memory"**

System break can't be moved anymore, no more memory can be retrieved from the system.

## EXAMPLE

```
#include "mut.h"
char ∗concatstring(t, s);
{
	t = (char ∗)mbkrealloc(strlen(t) + strlen(s) + 1);
	strcat(t, s);
	return t;
}
```

## SEE ALSO

**mbk**(1), [**mbkalloc**(3)](/mbkalloc/3.md), [**mbkfree**(3)](/mbkfree/3.md).
