ack/lang/cem/libcc/gen/memcpy.c
1987-03-31 10:45:53 +00:00

18 lines
274 B
C

/* $Header$ */
char *
memcpy(s1, s2, n)
register char *s1, *s2;
register int n;
{
/* Copy a block of data. */
char *ret = s1;
if (s2 <= s1 && s2 + (n-1) >= s1) {
s1 += n; s2 += n;
while (n-- > 0) *--s1 = *--s2;
}
else while (n-- > 0) *s1++ = *s2++;
return ret;
}