📜  C strcmp()函数(1)

📅  最后修改于: 2023-12-03 14:59:37.804000             🧑  作者: Mango

C strcmp()函数

简介

C语言中的strcmp()函数是用来比较字符串的函数,它的作用是比较字符串s1和字符串s2的大小。通常情况下,我们使用该函数来判断两个字符数组(即字符串)是否相同。如果相同,返回0,否则返回非0。

strcmp()函数在头文件<string.h>中声明,函数的原型如下:

int strcmp(const char *s1, const char *s2);

其中,s1s2表示需要比较的两个字符串。

参数
  • s1s2:需要比较的两个字符串,类型为const char *。注意,两个字符串必须以'\0'结尾。
返回值
  • 如果s1s2相等,则返回0;
  • 如果s1大于s2,则返回一个正整数;
  • 如果s1小于s2,则返回一个负整数。
例子
#include <stdio.h>
#include <string.h>

int main()
{
    char str1[] = "Hello";
    char str2[] = "World";
    char str3[] = "Hello";
    
    int result1 = strcmp(str1, str2); // result1为负数
    int result2 = strcmp(str1, str3); // result2为0
    int result3 = strcmp(str2, str1); // result3为正数
    
    printf("%d\n", result1);
    printf("%d\n", result2);
    printf("%d\n", result3);

    return 0;
}

以上代码运行结果为:

-15
0
15
总结

strcmp()函数是一个很常用的字符串比较函数,在实际编程中经常使用。需要注意的是,它是基于字符编码的比较,因此对于中文字符,需要使用带有中文支持的比较函数,如strcmp_s()等。

在使用strcmp()函数时,需要保证需要比较的两个字符串已经以'\0'结尾,否则可能会导致不可预测的结果。