memmove - Man Page

copy memory area


Standard C library (libc, -lc)


#include <string.h>

void *memmove(void dest[.n], const void src[.n], size_t n);


The memmove() function copies n bytes from memory area src to memory area dest. The memory areas may overlap: copying takes place as though the bytes in src are first copied into a temporary array that does not overlap src or dest, and the bytes are then copied from the temporary array to dest.

Return Value

The memmove() function returns a pointer to dest.


For an explanation of the terms used in this section, see attributes(7).

memmove()Thread safetyMT-Safe


POSIX.1-2001, POSIX.1-2008, C89, C99, SVr4, 4.3BSD.

See Also

bcopy(3), bstring(3), memccpy(3), memcpy(3), strcpy(3), strncpy(3), wmemmove(3)

Referenced By

bcopy(3), bstring(3), memccpy(3), memcpy(3), mempcpy(3), mksh(1), netsniff-ng(8), pmem2_async(3), pmem2_get_memmove_fn(3), pmem_memmove_persist(3), pmemobj_memcpy_persist(3), signal-safety(7), stress-ng(1), wmemmove(3).

2022-12-15 Linux man-pages 6.02