1 /*- 2 * Copyright (c) 1990, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 */ 7 8 #if defined(LIBC_SCCS) && !defined(lint) 9 static char sccsid[] = "@(#)memccpy.c 8.1 (Berkeley) 06/04/93"; 10 #endif /* LIBC_SCCS and not lint */ 11 12 #include <sys/cdefs.h> 13 #include <string.h> 14 15 void * 16 memccpy(t, f, c, n) 17 void *t; 18 const void *f; 19 int c; 20 register size_t n; 21 { 22 23 if (n) { 24 register unsigned char *tp = t; 25 register const unsigned char *fp = f; 26 do { 27 if ((*tp++ = *fp++) == c) 28 return (t); 29 } while (--n != 0); 30 } 31 return (0); 32 } 33