mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-03-11 07:24:18 +02:00
26 lines
585 B
C
26 lines
585 B
C
/* memcpy.c -- copy memory.
|
|
Copy LENGTH bytes from SOURCE to DEST. Does not null-terminate.
|
|
The source and destination regions may not overlap.
|
|
In the public domain.
|
|
By Jim Meyering. */
|
|
|
|
/* FIXME: remove this before release. */
|
|
#include <assert.h>
|
|
#ifndef ABS
|
|
# define ABS(x) ((x) < 0 ? (-(x)) : (x))
|
|
#endif
|
|
|
|
void
|
|
memcpy (dest, source, length)
|
|
char *dest;
|
|
const char *source;
|
|
unsigned length;
|
|
{
|
|
assert (length >= 0);
|
|
/* Make sure they don't overlap. */
|
|
assert (ABS (dest - source) >= length);
|
|
|
|
for (; length; --length)
|
|
*dest++ = *source++;
|
|
}
|