C语言 strcmp

在C语言中,strcmp 函数用于比较两个字符串。它的原型定义在 <string.h> 头文件中。strcmp 函数比较两个字符串直到找到一个不同的字符或者到达字符串的末尾。函数的原型如下:

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

参数

  • str1:指向第一个要比较的字符串的指针。
  • str2:指向第二个要比较的字符串的指针。

返回值

  • 如果 str1str2 字符串相等,返回 0
  • 如果 str1 小于 str2,返回小于 0 的值(具体值依实现而定,通常是负值,表示 str1 在字典顺序上排在 str2 前面)。
  • 如果 str1 大于 str2,返回大于 0 的值(具体值依实现而定,通常是正值,表示 str1 在字典顺序上排在 str2 后面)。

用法示例

下面的例子展示了如何使用 strcmp 函数来比较两个字符串:

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

int main() {
    char str1[] = "hello";
    char str2[] = "world";
    char str3[] = "hello";

    // 比较 str1 和 str2
    if (strcmp(str1, str2) == 0) {
        printf("str1 and str2 are equal.\n");
    } else {
        printf("str1 and str2 are not equal.\n");
    }

    // 比较 str1 和 str3
    if (strcmp(str1, str3) == 0) {
        printf("str1 and str3 are equal.\n");
    } else {
        printf("str1 and str3 are not equal.\n");
    }

    return 0;
}

 在这个例子中,str1str3 是相等的字符串,所以 strcmp(str1, str3) 会返回 0,表明这两个字符串是相等的。而 str1str2 是不同的字符串,所以 strcmp(str1, str2) 会返回一个非零值,表明这两个字符串是不相等的。

注意

  • strcmp 函数对大写和小写字母敏感,也就是说,它认为大写和小写字母是不同的字符。如果需要进行不区分大小写的比较,可以使用 strcasecmp 函数(或在某些环境中可能是 _stricmp)。
  • 在使用 strcmp 函数比较字符串时,确保两个字符串都以空字符('\0')结尾,否则可能导致未定义行为。

相关推荐

  1. C语言 strcmp

    2024-03-26 13:04:02       37 阅读
  2. C语言利用strcmp写简单数组存储的登录+注册程序

    2024-03-26 13:04:02       53 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-26 13:04:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-26 13:04:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-26 13:04:02       87 阅读
  4. Python语言-面向对象

    2024-03-26 13:04:02       96 阅读

热门阅读

  1. 从零学算法212

    2024-03-26 13:04:02       39 阅读
  2. 计算机网络(02)

    2024-03-26 13:04:02       38 阅读
  3. 蓝桥杯刷题_day2

    2024-03-26 13:04:02       40 阅读
  4. 网络的warm up

    2024-03-26 13:04:02       39 阅读
  5. 教程2_视频入门

    2024-03-26 13:04:02       42 阅读
  6. c语言编程题目:水仙花数

    2024-03-26 13:04:02       45 阅读
  7. ADP论文学习-零和或非零和博弈问题

    2024-03-26 13:04:02       47 阅读
  8. C++语法|C++八股|内存泄漏杂谈

    2024-03-26 13:04:02       43 阅读
  9. 解析option设计模式

    2024-03-26 13:04:02       42 阅读