std:: strcmp
|
定义于头文件
<cstring>
|
||
|
int
strcmp
(
const
char
*
lhs,
const
char
*
rhs
)
;
|
||
按字典序比较两个以空字符结尾的字节字符串。
结果的符号取决于字符串中第一对不相同字符(均被解释为 unsigned char )值之差的符号。
如果 lhs 或 rhs 不是指向以空字符结尾的字符串的指针,则行为是未定义的。
目录 |
参数
| lhs, rhs | - | 指向要比较的空终止字节字符串的指针 |
返回值
若 lhs 在字典序中出现在 rhs 之前,则返回负值。
当 lhs 与 rhs 比较相等时返回零。
若 lhs 在字典序中出现在 rhs 之后,则返回正值。
示例
#include <algorithm> #include <cstring> #include <iostream> #include <vector> 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
参阅
|
比较两个字符串的前若干字符
(函数) |
|
|
比较两个宽字符串
(函数) |
|
|
比较两个缓冲区
(函数) |
|
|
根据当前本地环境比较两个字符串
(函数) |
|
|
C 文档
for
strcmp
|
|