STRCASECMP(3) | Library Functions Manual | 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 IEEE Std 1003.1-2008 (“POSIX.1”).

# HISTORY

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

September 5, 2017 | Debian