ref: c0cbe87b357a4464a7d10ab8f38a65c77ea3b629
dir: /lib9/cistrncmp.c/
#include "lib9.h" int cistrncmp(char *s1, char *s2, int n) { int c1, c2; while(*s1 && n-- > 0){ c1 = *(uchar*)s1++; c2 = *(uchar*)s2++; if(c1 == c2) continue; if(c1 >= 'A' && c1 <= 'Z') c1 -= 'A' - 'a'; if(c2 >= 'A' && c2 <= 'Z') c2 -= 'A' - 'a'; if(c1 != c2) return c1 - c2; } if(n <= 0) return 0; return -*s2; }