26 строки
434 B
C
26 строки
434 B
C
#include <linux/types.h>
|
|
#include <linux/ctype.h>
|
|
#include <linux/string.h>
|
|
|
|
int strcasecmp(const char *s1, const char *s2)
|
|
{
|
|
int c1, c2;
|
|
|
|
do {
|
|
c1 = tolower(*s1++);
|
|
c2 = tolower(*s2++);
|
|
} while (c1 == c2 && c1 != 0);
|
|
return c1 - c2;
|
|
}
|
|
|
|
int strncasecmp(const char *s1, const char *s2, size_t n)
|
|
{
|
|
int c1, c2;
|
|
|
|
do {
|
|
c1 = tolower(*s1++);
|
|
c2 = tolower(*s2++);
|
|
} while ((--n > 0) && c1 == c2 && c1 != 0);
|
|
return c1 - c2;
|
|
}
|