strcmp, strncmp — compare two strings

Synopsis

#include <string.h>

int strcmp(const char *s1, const char *s2);

int strncmp(const char *s1, const char *s2, size_t n);

Description

The strcmp() function compares the two strings s1 and s2. The locale is not taken into account (for a locale-aware comparison, see strcoll(3)). It returns an integer less than, equal to, or greater than zero if s1 is found, respectively, to be less than, to match, or be greater than s2.

The strncmp() function is similar, except it compares only the first (at most) n bytes of s1 and s2.

Return Value

The strcmp() and strncmp() functions return an integer less than, equal to, or greater than zero if s1 (or the first n bytes thereof) is found, respectively, to be less than, to match, or be greater than s2.

Attributes

For an explanation of the terms used in this section, see attributes(7).

Interface Attribute Value
strcmp(), strncmp() Thread safety MT-Safe

Conforming to

POSIX.1-2001, POSIX.1-2008, C89, C99, SVr4, 4.3BSD.

See Also

bcmp(3), memcmp(3), strcasecmp(3), strcoll(3), string(3), strncasecmp(3), strverscmp(3), wcscmp(3), wcsncmp(3)

Colophon

This page is part of release 5.04 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.

Referenced By

bash(1), bcmp(3), curl_strequal(3), fstrcmp(3), fstrcmpi(3), gvpr(1), hsearch(3), krb5_acl_match_file(3), memcmp(3), namealloc.3alc(3), naturalstrcmp.3alc(3), qsort(3), rc_stringlist(3), scandir(3), selinux_file_context_cmp(3), signal-safety(7), strcasecmp(3), strcoll(3), string(3), str_start(3), strverscmp(3), strxfrm(3), wcscmp(3), wcsncmp(3).

The man page strncmp(3) is an alias of strcmp(3).

2019-03-06 Linux Programmer's Manual