Reference

bcopy(9)

copy bytes in object

NAME

bcopy – copy bytes in object

SYNOPSIS

#include <sys/systm.h>

void

bcopy(const void *src, void *dst, size_t len);

DESCRIPTION

The bcopy() function copies len bytes from object src to object dst preserving the provenance of pointers in the copied object (see memory_model(7) for further information). The two objects may overlap. If len is zero, no bytes are copied.

The bcopy() function is deprecated and memcpy() or memmove() should be used as appropriate in new code.

SEE ALSO

memcpy(9), memmove(9)

HISTORY

A bcopy() function appeared in 4.2BSD.

IEEE Std 1003.1-2008 (“POSIX.1”) removes the specification of bcopy() and it is marked as LEGACY in IEEE Std 1003.1-2004 (“POSIX.1”). New programs should use memmove(3). If the input and output buffer do not overlap, then memcpy(3) is more efficient. Note that bcopy() takes src and dst in the opposite order from memmove() and memcpy(). In practice, ⟨sys/systm.h⟩ defines bcopy() as a macro that calls memmove() since FreeBSD 12.0.