---
name: "strcasecmp"
section: "3"
platform: "macos"
package: "Libc"
version: "1752.120.2"
release: "macOS 26.5"
platforms: ["linux", "freebsd", "macos"]
url: "https://new.carta.tech/strcasecmp"
---

# strcasecmp(3)

compare strings, ignoring case

## NAME

**strcasecmp**, **strcasecmp\_l**, **strncasecmp**, **strncasecmp\_l** – compare strings, ignoring case

## LIBRARY

Standard C Library (libc, -lc)

## SYNOPSIS

**#include \<strings.h\>**

*int*\

**strcasecmp**(*const char \*s1*, *const char \*s2*);

*int*\

**strncasecmp**(*const char \*s1*, *const char \*s2*, *size\_t n*);

**#include \<strings.h\>**

**#include \<xlocale.h\>**

*int*\

**strcasecmp\_l**(*const char \*s1*, *const char \*s2*, *locale\_t loc*);

*int*\

**strncasecmp\_l**(*const char \*s1*, *const char \*s2*, *size\_t n*, *locale\_t loc*);

## DESCRIPTION

The **strcasecmp**() and **strncasecmp**() functions compare the null-terminated strings *s1* and *s2*.

The **strncasecmp**() compares at most *n* characters.

Although the **strcasecmp**() and **strncasecmp**() functions use the current locale, the **strcasecmp\_l**() and **strncasecmp\_l**() functions may be passed locales directly. See [xlocale(3)](/xlocale/3.md) for more information.

## RETURN VALUES

The **strcasecmp**() and **strncasecmp**() return an integer greater than, equal to, or less than 0, according as *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’.

## SEE ALSO

[bcmp(3)](/bcmp/3.md), [memcmp(3)](/memcmp/3.md), [strcmp(3)](/strcmp/3.md), [strcoll(3)](/strcoll/3.md), [strxfrm(3)](/strxfrm/3.md), [tolower(3)](/tolower/3.md), [xlocale(3)](/xlocale/3.md)

## HISTORY

The **strcasecmp**() and **strncasecmp**() functions first appeared in 4.4BSD. Their prototypes existed previously in ⟨string.h⟩ before they were moved to ⟨strings.h⟩ for IEEE Std 1003.1-2001 (“POSIX.1”) compliance.
