shithub: scc

ref: e2fe38d6738c7d231fd926a36a0b1e173af7f2d2
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);
}