Namespaces
Variants
Views
Actions

strcmp

From cppreference.com
< c‎ | string‎ | byte
Revision as of 13:09, 10 September 2013 by P12 (Talk | contribs)

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

Parameters

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

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.

Example

#include <string.h>
#include <stdio.h>
 
int main() 
{
    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.

See also

compares a certain amount of characters of two strings
(function) [edit]
compares two buffers
(function) [edit]
compares two strings in accordance to the current locale
(function) [edit]