📅  最后修改于: 2023-12-03 14:59:50.824000             🧑  作者: Mango
std::strncmp()
函数介绍在 C++ 标准库中,std::strncmp()
是一个用来比较两个字符串的函数。它用于比较两个 C 风格字符串(以 null 结尾的字符数组)的前 n 个字符是否相等。该函数返回一个整数值,用于指示比较结果。
函数的声明如下:
int strncmp(const char* str1, const char* str2, std::size_t count);
std::strncmp()
函数有三个参数:
str1
:指向第一个字符串的指针。str2
:指向第二个字符串的指针。count
:要比较的最大字符数。std::strncmp()
返回一个整数值,表示比较结果,具体含义如下:
str1
的前 count
个字符与 str2
的前 count
个字符相等,则返回 0。str1
的前 count
个字符小于 str2
的前 count
个字符,则返回一个负数。str1
的前 count
个字符大于 str2
的前 count
个字符,则返回一个正数。以下是一个使用 std::strncmp()
函数的示例代码:
#include <iostream>
#include <cstring>
int main() {
const char* str1 = "Hello";
const char* str2 = "World";
int result = std::strncmp(str1, str2, 3);
if (result == 0) {
std::cout << "前三个字符相等" << std::endl;
} else if (result < 0) {
std::cout << "前三个字符小于" << std::endl;
} else {
std::cout << "前三个字符大于" << std::endl;
}
return 0;
}
在上面的示例中,我们比较了两个字符串 "Hello" 和 "World" 的前三个字符。由于这两个字符串的前三个字符都相等,因此结果将为 0,并输出 "前三个字符相等"。
std::strncmp()
函数比较的是字符数组的内容,而不是数组的指针地址。count
个字符内相同,则比较结果将为 0。