STRCASECMP(3)

NAME
strcasecmp, strcasecmp_l, strncasecmp, strncasecmp_l - compare strings, ignoring case

SYNOPSIS
#include <strings.h>
int
strcasecmp(const char *s1, const char *s2);
int
strncasecmp(const char *s1, const char *s2, size_t len);
#include <xlocale.h>
int
strcasecmp_l(const char *s1, const char *s2, locale_t locale);
int
strncasecmp_l(const char *s1, const char *s2, size_t len, locale_t locale);

DESCRIPTION
These functions compare the NUL-terminated strings s1 and s2 and return an integer greater than, equal to, or less than 0, according to whether s1 is lexicographically greater than, equal to, or less than s2 after translation of each corresponding character to lower-case. The strings themselves are not modified. The comparison is done using unsigned characters, so that ‘\200’ is greater than ‘\0’.

strncasecmp() and strncasecmp_l() compare at most len characters.

On adJ the functions strcasecmp() and strncasecmp() use the LC_CTYPE cateogry of the thread-specific locale set with uselocale or the global one set with setlocale. strcasecmp_l() and strncasecmp_l() use the LC_CTYPE category of the locale argument.

SEE ALSO
strcmp(3), strcoll(3), strxfrm(3), wcscasecmp(3) locale(1). xlocale(3)

STANDARDS
These functions conform to p1003.1-2008.

HISTORY
The strcasecmp() and strncasecmp() functions have been available since 4.3BSD Tahoe, and strcasecmp_l() and strncasecmp_l() since OpenBSD 6.2.