compare strings

You're viewing an older version of this page (#4066). View the current version.

View versions (3)

INTERFACE

#include <string.h>
int strcmp ( const char *s1, const char *s2 )
int strncmp ( const char *s1, const char *s2, size_t len )

DESCRIPTION

The strcmp and strncmp functions lexicographically compare the null-terminated strings s1 and s2.

The strncmp function compares not more than len characters. Because strncmp is designed for comparing strings rather than binary data, characters that appear after a \\0 character are not compared.

Example 1
Workings

\code #include <stdio.h> #include <string.h> int main() { // define two strings s, t and initialize s char s[10] = "testing", t[10]; // copy s to t strcpy(t, s); // test if s is identical to t if (!strcmp(s, t)) printf("The strings are identical."); else printf("The strings are different.");

return 0; } \endcode

Solution

Output:

The strings are identical.

RETURN VALUES

The strcmp and strncmp return an integer greater than, equal to, or less than 0, according as the string s1 is greater than, equal to, or less than the string s2. The comparison is done using unsigned characters, so that \\200 is greater than \\0.

SEE ALSO

memcmp, strcoll, strxfrm

STANDARDS

The strcmp and strncmp functions conform to ISO/IEC 9899:1990 ("ISO C90").