用指针实现strcmp函数功能

article/2025/11/8 13:17:55

strcmp函数的原理:

        将两个字符串🔍(s1,s2)的元素ascii码依次比较,直到遇到最短字符串的‘\0’,返回最后一个元素ascii码比较结果。

指针实现方式:

        通过定义两个char*指针🔍分别指向需要比较的两个字符串,通过指针指向的地址的偏移,比较两个字符串内元素ascii码的差值,最终得到两个字符串的比较结果。

具体代码如下:

#include <stdio.h>
/*
功能:比较字符串
参数:字符串指针s1 字符串指针s2*/
void my_strcmp(char *s1,char *s2){char *first = s1;char *second = s2;while(*first != '\0' && *second != '\0'){        //判断每个字符串的数据是否都存在if(*first == *second){                    //将两个字符串内对应的字符进行比较first++;second++;continue;}break;}int fin = *first - *second;            //得到最后一对元素的ascii码差值if(fin > 0){                        //判断差值的大小printf("比较结果:s1>s2\n");}else if(fin < 0){printf("比较结果:s1<s2\n");}else if(fin == 0){printf("比较结果:s1==s2\n");	}return;}int main(int argc, const char *argv[])
{char s1[64] = "0";char s2[64] = "0";printf("请输入字符串s1:");scanf("%s",s1);printf("请输入字符串s2:");scanf("%s",s2);my_strcmp(s1,s2);return 0;
}

注意:

        1.主函数中字符串大小的定义会影响终端输入字符串数据的个数。

        2.比较的是两个字符串对应元素ascii码,与字符串所含元素的个数无关(除非较短的字符串所有的元素与较长字符串对应元素相同)。

运行结果:

 情况1.

情况2. 

 

情况3.

情况4.


http://chatgpt.dhexx.cn/article/r7QsOAox.shtml

相关文章

C语言中的strcmp函数的作用是什么,c语言strcmp函数用法是什么?

c语言strcmp函数用法&#xff1a;语法结构为【int strcmp(char *str1, char *str2)】&#xff0c;比较字符串str1和str2是否相同&#xff0c;如果相同则返回0&#xff0c;如果不同&#xff0c;在不同的字符处如果str1的字符大于str2字符&#xff0c;则返回负1。 c语言strcmp函数…

strcmp函数及模拟

strcmp包含在<string.h>的头文件中&#xff0c;作用是比较两个字符串。将 C 字符串 str1 与 C 字符串 str2 进行比较。 1.strcmp函数的参数和返回值、 参数&#xff1a;是两个待比较字符串的首地址 返回值&#xff1a;此函数开始比较每个字符串的第一个字符。如果它们彼此…

自定义strcmp函数

不调用#include<string.h>实现strcmp函的功能&#xff1a; 先说一下strcmp的功能&#xff0c;是一个字符串处理函数&#xff0c;是一个用于对两组字符串进行比较的函数&#xff0c;它的返回值是int类型。 例如&#xff1a; int strcmp(char s1 , char s2) char s1[ ]…

一文吃透strcmp函数

年轻是我们唯一拥有权利去编织梦想的时光&#xff01;&#x1f493;&#x1f493;&#x1f493; 文章目录 •&#x1f319;写在前面• &#x1f34b;1.函数介绍• &#x1f330;1.1.函数接口• &#x1f330;1.2.函数分析• &#x1f330;1.3.函数的简单使用• &#x1f330;1.…

比较函数大合集:strcmp,strncmp,memcmp

前言&#xff1a; 接着奏乐接着舞&#xff0c;我们继续来看字符串函数和内存函数。今天要讲的是比较函数大合集&#xff0c;话不多说&#xff0c;开肝&#xff01;&#xff01;&#xff01; strcmp函数&#xff1a; 什么是strcmp函数&#xff1f; strcmp即string compare&#…

Linux 字符串截取命令

Linux 字符串截取&#xff0c;一般用在 shell 脚本中&#xff0c;本篇写几个简单的 demo 跟大家分享一下 首先&#xff0c;定义一个变量 demohttps://blog.csdn.net/ 1.使用 # 号截取&#xff0c;删除左边字符&#xff0c;保留右边字符 echo ${demo#*//} 其中&#xff0c;demo…

bat字符串截取

举例&#xff1a;输入hello world和-2&#xff0c;输出ld 这个简单。代码如下 echo off&Setlocal enabledelayedexpansion :标签1 set 文本hello world set 开头-2 set 结尾 set /p 文本请输入文本&#xff0c;留空使用默认值hello world set /p 开头请输入取值开头位…

批处理字符串截取

批处理字符串截取 在批处理中&#xff0c;set的功能有点繁杂&#xff1a;设置变量、显示环境变量的名及值、做算术运算、等待用户的输入、字符串截取、替换字符串&#xff0c;是我们常用的命令之一。 在字符串截取方面&#xff0c;新手因为没能注意到偏移量的问题&#xff0c;…

整理了几种字符串截取方法

一、 (Substring);(Remove);(Replace) 1、取字符串的前i个字符 (1)string str1str.Substring(0,i);(2)string str1str.Remove(i,str.Length-i); 2、去掉字符串的前i个字符 string str1str.Remove(0,i);string str1str.SubString(i); 3、从右边开始取i个字符 string str1str.Sub…

JSTL标签的使用详情

if 标签 choose标签 forEach标签 这里是JSTL的标签文档&#xff0c;我们主要介绍几个常用的 https://www.runoob.com/jsp/jsp-jstl.html if 标签 if标签为判断标签&#xff0c;没有else标签&#xff0c;多个分支就用个if判断 例子 访问结果 choose标签 choose标签为选择标签…

JSTL标签库的使用及其常用标签

目录 什么是JSTL标签库&#xff1f; 使用JSTL标签库的步骤&#xff1a; 第一步&#xff1a;引入JSTL标签库对应的jar包。 第二步&#xff1a;在JSP中引入要使用标签库。&#xff08;使用taglib指令引入标签库。&#xff09; 第三步&#xff1a;在需要使用标签的位置使用即可。…

JSP之自定义jstl标签

目录 一&#xff0c;什么是JSP&#x1f351; 二&#xff0c;什么是JSTL&#xff08;JSTL标签库&#xff09;&#x1f353; 三&#xff0c;如何使用JSTL&#x1f345; 在项目中如何使用JSTL标签&#xff1f;在发开中使用JSTL标签库需要执行如下两个步骤。 &#xff08;1&a…

什么是JSTL标签?常用的标签库有哪些?

从JSP1.1规范开始&#xff0c;JSP就支持使用自定义标签&#xff0c;使用自定义标签大大降低了JSP页面的复杂度&#xff0c;同时增强了代码的重用性。为此&#xff0c;许多Web应用厂商都定制了自身应用的标签库&#xff0c;然而同一功能的标签由不同的Web应用厂商制定可能是不同…

jsp--JSTL标签库

目录 1.JSTL标签库介绍 2.JSTL 标签库的使用步骤 3.core核心库使用 3.1 <c:set> 3.2 <c:if /> 3.3 <c:choose> <c:when> <c:otherwise >标签 3.4 <c:forEach /> 1.JSTL标签库介绍 JSTL 标签库&#xff0c;全称是指 JSP Standard …

【Java Web】JSTL标签库的引入

在使用JSTL标签前首先要引入JSTL标签库 引入&#xff1a; <% taglib prefix"c" uri"http://java.sun.com/jsf/core" %> taglib是JSP指令&#xff0c;功能是用来引入标签库&#xff1b; prefix意思是前缀&#xff0c;指的就是使用标签时的前缀&a…

常见JSTL标签详解

JSP标准标签库&#xff08;JSTL&#xff09; jsp标准标签库&#xff08;jstl&#xff09;是一个JSP标签集合&#xff0c;它封装了jsp应用的通用核心功能。 JSTL支持通用的、格式化的任务。比如&#xff1a;迭代、条件判断、XML文档操作、国际化标签、SQL标签。除了这些它还提供…

JSTL标签库之核心标签

一、JSTL标签库介绍   JSTL标签库的使用是为弥补html标签的不足&#xff0c;规范自定义标签的使用而诞生的。使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二、JSTL标签库的分类 核心标签(用得最多)国际化标签(I18N格式化标签)数据库标签(SQL标签&#xff0c;很…

JSTL标签库的使用

1 JSTL 1.1 JSTL概述 1&#xff09;简介 JSTL的全称是&#xff1a;JSP Standard Tag Libary。它是JSP中标准的标签库。它是由Apache实现的。 它由以下5个部分组成&#xff1a; 组成作用说明Core核心标签库。通用逻辑处理Fmt国际化有关。需要不同地域显示不同语言时使用Fun…

JSTL标签库 | 深入解析JSTL标签库

目录 一&#xff1a;深入解析JSTL标签库 1、什么是JSTL标签库 2、使用JSTL标签库的步骤 3、JSTL标签的原理 4、jstl中的核心标签库core当中常用的标签 一&#xff1a;深入解析JSTL标签库 1、什么是JSTL标签库 ①Java Standard Tag Lib&#xff08;Java标准的标签库&am…

JSTL标签库详细介绍

目录 一JSTL标签库 二、核心&#xff08;Core&#xff09;标签库 通用标签 循环控制标签 导入文件和URL 总结 一JSTL标签库 JSTL是一个不断完善的开放源代码的JSP标签库&#xff0c;是由apache的jakarta小组来维护的。JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上…