std::strncmp
From cppreference.com
Defined in header
<cstring>
|
||
int strncmp( const char* lhs, const char* rhs, size_t count );
|
||
Compares at most count
characters of two null-terminated byte strings. The comparison is done lexicographically.
Contents |
[edit] Parameters
lhs, rhs | - | pointers to the null-terminated byte strings to compare |
count | - | maximum number of characters 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
Run this code
#include <iostream> #include <cstring> int main() { const char world[] = "Hello, world!"; const char everybody[] = "Hello, everybody!"; const char somebody[] = "Hello, somebody!"; // Compares 13 characters of "Hello, world!" and "Hello, everybody!" std::cout << std::strncmp(world, everybody, sizeof(world) - 1) << '\n'; // Compares 13 characters of "Hello, everybody!" and "Hello, world!" std::cout << std::strncmp(everybody, world, sizeof(world) - 1) << '\n'; // Compares 7 characters of "Hello, everybody!" and "Hello, world!" std::cout << std::strncmp(everybody, world, sizeof("Hello, ") - 1) << '\n'; // Compares 5 characters of "Hello, everybody!" and "Hello, somebody!" // ^ ^ std::cout << std::strncmp(&everybody[12], &somebody[11], sizeof("body!") - 1) << '\n'; }
Output:
1 -1 0 0
[edit] See also
compares two strings (function) |
|
compares two buffers (function) |
|
compares two strings in accordance to the current locale (function) |
|
C documentation for strncmp
|