C 标准库 - <string.h>

C 语言 strncmp() 函数用于比较两个字符串的前 n 个字符,用于限定长度的比较。

原型

int strncmp(const char *str1, const char *str2, size_t n);

参数

  • str1, str2 - 要比较的字符串;
  • n - 最多比较的字符数。

返回值

返回值含义
< 0str1 前 n 个字符小于 str2
0str1 前 n 个字符等于 str2
> 0str1 前 n 个字符大于 str2

示例

#include <stdio.h>
#include <string.h>

int main()
{
    char s1[] = "abcdef";
    char s2[] = "abcXYZ";

    int r = strncmp(s1, s2, 3);  // 只比较前 3 个字符
    printf("前 3 个字符比较结果: %d\n", r);

    return 0;
}

输出:

前 3 个字符比较结果: 0

注意事项

strncmp 常用于比较带前缀的字符串(如协议标识、文件扩展名)。