strcmp

From cppreference.com
< c‎ | string‎ | byte
Defined in header <string.h>
int strcmp( const char *lhs, const char *rhs );

Compares two null-terminated byte strings. The comparison is done lexicographically.

Contents

[edit] Parameters

lhs, rhs - pointers to the null-terminated byte strings to compare

[edit] Return value

Negative value if lhs is less than rhs.

0 if lhs is equal to rhs.

Positive value if lhs is greater than rhs.

[edit] Example

#include <string.h>
#include <stdio.h>
 
int main(void) 
{
    const char* string = "Hello World!";
 
    //Matches
    int a = strcmp(string, "Hello World!");
    if (a == 0) {
        printf("Strings are matching.\n");
    }
 
    //Greater than
    int b = strcmp(string, "Hello");
    if (b >= 1) {
        printf("Left hand side is bigger than right hand side.\n");
    }
 
    //less than
    int c = strcmp(string, "Hello there world!");
    if (c <= -1) {
        printf("Left hand side is smaller than right hand side.\n");
    }
}

Output:

Strings are matching.
Left hand side is bigger than right hand side.
Left hand side is smaller than right hand side.

[edit] See also

compares a certain amount of characters of two strings
(function)
compares two buffers
(function)
compares two strings in accordance to the current locale
(function)
C++ documentation for strcmp