C语言 strcmp()函数

C语言 strcmp()函数使用攻略

介绍

strcmp()函数是C语言标准库中的一员,是string.h头文件中的字符串比较函数,用于比较两个字符串是否相等。该函数会依次比较两个字符串相应位置的字符的ASCII码大小关系,直到出现不同字符或遇到字符串结束符'\0'。如果两个字符串完全相同,则该函数返回0;如果两个字符串在某个位置上出现不同,则该函数返回第一次出现不同字符时的ASCII码之差。

函数原型如下:

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

参数说明

  • str1: 用于比较的第一个字符串。
  • str2: 用于比较的第二个字符串。

返回值

  • 如果两个字符串相等,则返回0。
  • 如果str1大于str2,则返回正数值。
  • 如果str1小于str2,则返回负数值。

示例

下面我们以两个示例来讲解strcmp()的使用方法。

示例1

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

int main()
{
    char str1[20], str2[20];
    int result;

    printf("请输入第一个字符串:");
    scanf("%s", str1);

    printf("请输入第二个字符串:");
    scanf("%s", str2);

    result = strcmp(str1, str2);

    if (result == 0)
        printf("两个字符串相等\n");
    else
        printf("两个字符串不相等\n");

    return 0;
}

上面的程序中,我们通过scanf()函数从用户处分别获取了两个字符串,然后使用strcmp()函数比较它们的大小关系,如果相等则输出“两个字符串相等”,否则输出“两个字符串不相等”。

示例2

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

int main()
{
    char * str1 = "ABCD";
    char * str2 = "ABC";

    int result = strcmp(str1, str2);

    printf("比较结果为:%d\n", result);

    return 0;
}

上面的程序中,我们直接将两个字符串赋值给指针变量str1和str2,然后使用strcmp()函数比较它们的大小关系,该示例的输出结果为“比较结果为:68”,因为字符“D”的ASCII码为68,比字符“\0”的ASCII码高,因此str1大于str2,所以结果为68。

总结

strcmp()函数常用于判断两个字符串是否相等,也可以用于字符串排序、字符串查找等场景。需要注意的是,在使用该函数时要保证字符串本身的内容和长度都正确,否则会出现不可预知的结果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言 strcmp()函数 - Python技术站

(0)
上一篇 2023年5月9日
下一篇 2023年5月9日

相关文章

  • DEV C++源码编译后控制台输出中文乱码问题解决

    以下是详细讲解“DEV C++源码编译后控制台输出中文乱码问题”的完整攻略: 问题原因及解决方案 开发过程中,我们经常会遇到中文输出乱码的问题。这是因为 C/C++ 标准库使用的是 ASCII 编码,而中文的编码不是 ASCII,所以输出会产生乱码。在 Windows 下,可以使用一些特殊的函数来解决这个问题。 解决方案 使用 _setmode 函数 _se…

    C 2023年5月23日
    00
  • Java EE项目中的异常处理总结(一篇不得不看的文章)

    以下是我对《Java EE项目中的异常处理总结(一篇不得不看的文章)》这篇文章的完整攻略: 文章概述 文章主要分为四个部分:异常处理的基本概念、Java中的异常处理机制、Java EE项目中的异常处理、异常处理的最佳实践等。其中,第一个部分主要介绍了异常处理的基本概念,包括异常的定义、分类、抛出和捕获等。第二个部分则详细讲解了Java中的异常处理机制,包括t…

    C 2023年5月23日
    00
  • C/C++ INI文件操作实现代码

    关于C++ INI文件操作实现代码的攻略,我提供以下完整步骤: 1. 什么是INI文件 INI文件是一种配置文件,通常用于应用程序的配置、选项和设置。INI文件通常是一个文本文件,包含了特定格式的键值对。INI文件的键值对格式如下: [section] key=value 其中,[]括起来的是一个section,下面的key=value就是在这个sectio…

    C 2023年5月24日
    00
  • C语言中如何进行网络编程?

    C语言中进行网络编程的步骤大致如下: 创建socket 绑定到一个IP地址和端口号 监听客户端请求 接受客户端连接 发送和接收数据 下面是详细的介绍: 创建socket 在C中使用socket函数来创建socket,语法如下: int socket(int domain, int type, int protocol); 其中,domain参数指定了协议域,…

    C 2023年4月27日
    00
  • C 存储类

    C 语言中的存储类指的是控制变量存储方式和生命周期的关键字。局部变量、全局变量和静态变量等都可以使用存储类关键字进行控制,以达到更加灵活的变量存储方式和更加符合实际需要的生命周期等效果。通常使用的存储类关键字有 auto、register、static、extern 四种。 下面我们来详细介绍一下“C 存储类”的使用攻略。 auto 存储类 auto 存储类…

    C 2023年5月10日
    00
  • C++调用C函数实例详解

    C++调用C函数实例详解 C++调用C函数是一种常见的操作,有很多场合需要这种操作。下面详细讲解C++调用C函数的完整攻略。 1. 头文件引入 要在C++中调用C函数,首先要引入对应的C函数的头文件。例如,要调用标准库中的函数,需要在C++源文件中使用如下代码: extern "C" { #include <stdio.h> …

    C 2023年5月23日
    00
  • C语言中的分支循环其嵌套语句

    C语言中的分支循环语句是控制程序流程的重要工具,它们可以根据条件来执行不同的代码块,或者循环执行某段代码块。与此同时,C语言还支持分支循环语句的嵌套,这种语句结构可以更精细地控制程序流程,提高代码的效率和可维护性。下面是完整的攻略。 分支语句 if语句 if语句是最基本的分支语句,用来测试一个条件,如果满足条件就执行指定的代码块。 语法: if (条件) {…

    C 2023年5月23日
    00
  • C++中try throw catch异常处理的用法示例

    C++中异常处理是一种用于处理程序运行期间发生的错误或异常情况的机制。一般情况下,C++中的异常处理包括三个关键字:try、throw、catch。 try:try语句块中的代码是需要被监控的代码。当try语句块中的代码抛出异常时,异常会被传递到catch块中进行处理。 throw:throw语句抛出一个异常,它抛出的值可以是任意类型的,包括一个简单的数字类…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部