| Name | Description | Notes | Source | Availability | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| strcmp() | Compare string | (·) | <string.h> | C89 | C90 | C95 | C99 | C11 | |||
| strncmp() | Compare string | (·) | <string.h> | C89 | C90 | C95 | C99 | C11 | |||
| wcscmp() | Compare wide-character string | (·) | <wchar.h> | C95 | C99 | C11 | |||||
| wcsncmp() | Compare wide-character string | (·) | <wchar.h> | C95 | C99 | C11 | |||||
#include <string.h>
int strcmp(const char *s1, const char *s2);
int strncmp(const char *s1, const char *s2, size_t n);
      
#include <wchar.h>
int wcscmp(const wchar_t *s1, const wchar_t *s2);
int wcsncmp(const wchar_t *s1, const wchar_t *s2, size_t n);
      strcmp and
      wcscmp
      compare two null-terminated strings s1 and s2 of bytes or wide
      characters respectively. Starting from index 0, each pair
      of elements at index i is compared.
      The functions stop when the elements differ, or are both
      null. The functions return an integer with the same sign as
      s1[i] - s2[i]. Zero therefore
      indicates that the strings are identical at least to the
      point where the comparison reached. Positive and negative
      values then indicate a relative ordering of the two strings.
      Such return values are compatible with the comparison
      functions required by qsort and bsearch.
strncmp
      and wcsncmp
      do the same as strcmp and
      wcscmp,
      but also stop when n pairs of elements
      have been compared, returning zero.
See also strcoll and wcscoll for a more sophisticated form of
      string comparison.
