---
name: "memfill"
section: "3pub"
platform: "linux"
package: "publib-dev"
version: "0.40-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/memfill"
---

# memfill(3pub)

fill memory area with pattern

## NAME

memfill - fill memory area with pattern

## SYNOPSIS

```
#include <publib.h>
void *memfill(void *buf, size_t size, const void *pat, size_t patsize);
```

## DESCRIPTION

*memfill* copies consecutive bytes from the pattern *pat* to consecutive bytes in the memory area *buf*, wrapping around in *pat* when its end is reached.  *patsize* is the size of the pattern, *size* is the size of the memory area.  The pattern and the memory area must not be overlapping.

## RETURN VALUE

*memfill* returns its first argument.

## EXAMPLE

To initialize an integer array one might do the following.

```
int temp, array[1024];
temp = 1234;
memfill(array, sizeof(array), &temp, sizeof(temp));
```

## SEE ALSO

publib(3)

## AUTHOR

Lars Wirzenius (lars.wirzenius@helsinki.fi)
