1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#define _POSIX_SOURCE #define _XOPEN_SOURCE #include <sys/types.h> #include <string.h> void *memccpy(void *dst, const void *src, int c, size_t count) { char *a = dst; const char *b = src; while (count--) { *a++ = *b; if (*b==c) { return (void *)a; } b++; } return 0; }