shithub: scc

ref: bbe0d56677276a42a3061a3580b8b2b325b8f109
dir: /lib/c/strncmp.c/

View raw version
#include <string.h>
#undef strncmp

int
strncmp(const char *s1, const char *s2, size_t n)
{
	int c;

	if (n == 0)
		return 0;
	while ((c = *s1) != '\0' && c == *s2) {
		if (--n == 0)
			return 0;
		++s1, ++s2;
	}
	return (*(unsigned char *) s1 - *(unsigned char *) s2);
}