在线文档教程
C++
字符串 | Strings

std::strcmp

STD:斯特姆

Defined in header
int strcmp( const char *lhs, const char *rhs

按字典顺序比较两个以空结尾的字节字符串。

结果的符号是第一对字符%28的值之间差值的符号,这两个字符都被解释为unsigned char%29,在所比较的字符串中存在差异。

如果lhsrhs不是指向以空结尾的字符串的指针。

参数

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

返回值

负值lhs出现在前面rhs按字典顺序排列。

零中频lhsrhs比较平等。

正值lhs出现在rhs按字典顺序排列。

二次

#include <vector> #include <cstring> #include <algorithm> #include <iostream> int main() { std::vector<const char*> cats {"Heathcliff", "Snagglepuss", "Hobbes", "Garfield"}; std::sort(cats.begin(), cats.end(), [](const char *strA, const char *strB) { return std::strcmp(strA, strB) < 0; } for (const char *cat : cats) { std::cout << cat << '\n'; } }

二次

产出:

二次

Garfield Heathcliff Hobbes Snagglepuss

二次

另见

strncmpcompares a certain amount of characters of two strings (function)
wcscmpcompares two wide strings (function)
memcmpcompares two buffers (function)
strcollcompares two strings in accordance to the current locale (function)

c为strcmp编写的文档

© cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

http://en.cppreference.com/w/cpp/string/字节/strcmp