1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
/* Public domain. */ #include <stddef.h> int memcmp (const void *str1, const void *str2, size_t count) { const unsigned char *s1 = str1; const unsigned char *s2 = str2; while (count-- > 0) { if (*s1++ != *s2++) return s1[-1] < s2[-1] ? -1 : 1; } return 0; }