strcmp函数例子

admin 41 0

`strcmp` 是一个标准库函数,用于比较两个 C 字符串,它定义在 `` 头文件中,`strcmp` 函数会按照字典顺序比较两个字符串,并返回一个整数来表示比较的结果。

函数原型:

```c

int strcmp(const char *str1, const char *str2);

返回值:

* 如果 `str1` 和 `str2` 是相同的,那么返回值是 0。
* 如果 `str1` 在字典顺序上小于 `str2`,那么返回值是负数。
* 如果 `str1` 在字典顺序上大于 `str2`,那么返回值是正数。

下面是一个使用 `strcmp` 函数的简单例子:


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

int main() {
    char str1[] = "Hello";
    char str2[] = "World";
    char str3[] = "Hello";

    // 比较 str1 和 str2
    int result1 = strcmp(str1, str2);
    printf("strcmp(\"%s\", \"%s\") = %d\n", str1, str2, result1);

    // 比较 str1 和 str3
    int result2 = strcmp(str1, str3);
    printf("strcmp(\"%s\", \"%s\") = %d\n", str1, str3, result2);

    // 比较 str2 和 str1
    int result3 = strcmp(str2, str1);
    printf("strcmp(\"%s\", \"%s\") = %d\n", str2, str1, result3);

    return 0;
}

strcmp("Hello", "World") = -1
strcmp("Hello", "Hello") = 0
strcmp("World", "Hello") = 1

在这个例子中,`strcmp` 函数被用来比较三个不同的字符串,`str1` 和 `str2` 是不同的,所以 `strcmp(str1, str2)` 返回 -1,`str1` 和 `str3` 是相同的,所以 `strcmp(str1, str3)` 返回 0,`str2` 在字典顺序上大于 `str1`,所以 `strcmp(str2, str1)` 返回 1。