13e12c5d1SDavid du Colombier #include <string.h> 23e12c5d1SDavid du Colombier 33e12c5d1SDavid du Colombier int strncmp(const char * s1,const char * s2,size_t n)43e12c5d1SDavid du Colombierstrncmp(const char *s1, const char *s2, size_t n) 53e12c5d1SDavid du Colombier { 63e12c5d1SDavid du Colombier unsigned c1, c2; 7*219b2ee8SDavid du Colombier long nn; 83e12c5d1SDavid du Colombier 9*219b2ee8SDavid du Colombier nn = n; 10*219b2ee8SDavid du Colombier while(nn > 0) { 113e12c5d1SDavid du Colombier c1 = *s1++; 123e12c5d1SDavid du Colombier c2 = *s2++; 13*219b2ee8SDavid du Colombier nn--; 143e12c5d1SDavid du Colombier if(c1 != c2) { 153e12c5d1SDavid du Colombier if(c1 > c2) 163e12c5d1SDavid du Colombier return 1; 173e12c5d1SDavid du Colombier return -1; 183e12c5d1SDavid du Colombier } 193e12c5d1SDavid du Colombier if(c1 == 0) 203e12c5d1SDavid du Colombier break; 213e12c5d1SDavid du Colombier } 223e12c5d1SDavid du Colombier return 0; 233e12c5d1SDavid du Colombier } 24