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
strcasecmp_l(const char *s1, const char *s2, locale_t locale);
int
strncasecmp(const char *s1, const char *s2, size_t len);
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 OpenBSD, these functions always use the C locale and ignore the global locale, the thread-specific locale, and the locale argument.

ENVIRONMENT
On other operating systems, the behaviour of strcasecmp() and strncasecmp() may depend on the LC_CTYPE locale(1).

SEE ALSO
strcmp(3), strcoll(3), strxfrm(3), wcscasecmp(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.