strcmp的模拟实现

 一:strcmp函数的定义:

strcmp函数功能的解释: 

比较两个字符串的大小(按照字符串中字符的ascll码值)。

标准规定:
第一个字符串大于第二个字符串,则返回大于 0 的数字
第一个字符串等于第二个字符串,则返回 0
第一个字符串小于第二个字符串,则返回小于 0 的数字

二:strcat函数的演示:

因为e的ascll码值<f的ascll码值 ,返回小于0 的数子-1。

三:strcmp的模拟实现:(最简单且严谨的版本)

理解要点:

1,断言是否为空指针,在考虑是否进行下一步 

2,两个字符串中对应的字符相等就进入循环,否则肯定可以比较出大小

3,因为两个字符串中对应的字符相等,所以一个不为'\0',另一个也不会

4,返还出正负或0值,直接return前者和后者的ascll码值即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/541374.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

宠物食品药品小程序有哪些功能

现在很多人都喜欢养宠物&#xff0c;这带动了宠物相关产业链&#xff0c;例如宠物医院、宠物清理、宠物食品、宠物玩具、宠物药品等。那么今天就介绍宠物食品药品小程序有哪些功能&#xff0c;以帮助您更好地为宠物行业的客户提供服务。 1. **商品展示**&#xff1a;宠物食品小…

C++ 作业 24/3/14

1、成员函数版本实现算术运算符的重载&#xff1b;全局函数版本实现算术运算符的重载 #include <iostream>using namespace std;class Test {friend const Test operator-(const Test &L,const Test &R); private:int c;int n; public:Test(){}Test(int c,int n…

嵌入式面经-ARM体系架构-计算机基础

嵌入式系统分层 操作系统的作用&#xff1a;向下管理硬件&#xff0c;向上提供接口&#xff08;API&#xff09; 应用开发&#xff1a;使用操作系统提供的接口&#xff08;API&#xff09;&#xff0c;做上层的应用程序开发&#xff0c;基本不用去关内核操作硬件是怎么实现的 …

HarmonyOS 非线性容器特性及使用场景

非线性容器实现能快速查找的数据结构&#xff0c;其底层通过 hash 或者红黑树实现&#xff0c;包括 HashMap、HashSet、TreeMap、TreeSet、LightWeightMap、LightWeightSet、PlainArray 七种。非线性容器中的 key 及 value 的类型均满足 ECMA 标准。 HashMap HashMap 可用来存…

Linux——信号量

目录 POSIX信号量 信号量原理 信号量概念 信号量函数 基于环形队列的生产者消费者模型 生产者和消费者申请和释放资源 单生产者单消费者 多生产者多消费者 多生产者多消费者的意义 信号量的意义 POSIX信号量 信号量原理 如果仅用一个互斥锁对临界资源进行保护&#…

path模块

一、path模块作用 path模块提供了操作路径的功能 二、语法 (1) path.resolve 拼接规范的绝对路径 常用 (2) path.sep 获取操作系统的路径分隔符 (3) path.parse 解析路径并且返回对象 (4) path.basename 获取路径的基本名称 (5) path.dirname 获取路径的目录名 …

Android NDK入门:在应用中加入C和C++的力量

目录 ​编辑 引 NDK的设计目的 与Java/Kotlin的结合 使用场景 开发流程 设置项目以支持NDK 编写本地代码 使用JNI连接本地代码和Java/Kotlin代码 编译和运行你的应用 附 引 自诩方向是android方向的移动端开发工程师&#xff0c;却从来没有真正仔细了解过NDK&#…

【Unity】Tag、Layer、LayerMask

文章目录 层&#xff08;Layer&#xff09;什么是LayerLayer的应用场景Layer层的配置&#xff08;Tags & Layers&#xff09;Layer的数据结构LayerMaskLayer的选中和忽略Layer的管理&#xff08;架构思路&#xff09;层碰撞矩阵设置&#xff08;Layer Collision Matrix&…

Could not transform the global plan to the frame of the controller

报错&#xff1a; [ERROR] [1710509295.679888409, 296.695000000]: Extrapolation Error: Lookup would require extrapolation 0.003000000s into the future. Requested time 295.747000000 but the latest data is at time 295.744000000, when looking up transform from…

智能视频生产平台解决方案介绍

视频内容已经成为企业宣传、营销、培训等多维度沟通的重要媒介&#xff0c;美摄科技凭借其在智能视频生产领域的深厚积累和创新能力&#xff0c;推出了面向企业的智能视频生产平台解决方案&#xff0c;为企业提供多端多场景的智能化视频生产工具&#xff0c;助力企业轻松打造高…

C语言进阶:顺序表(数据结构基础) (以通讯录项目为代码练习)

和黛玉学编程呀 C语言基础知识也完成了&#xff0c;所以就来谈谈数据结构吧&#xff0c;这篇主要是为了连接数据结构和C语言 很高兴又和大家见面啦&#xff0c;这节我们就讲顺序表&#xff0c;一起加油> 目录 数据结构相关概念 顺序表&#xff08;线性表&#xff0c;顺序…

【研发日记】Matlab/Simulink技能解锁(一)——在Simulink编辑窗口Debug

文章目录 前言 时间阈值断点 信号阈值断点 周期步进 Signal Value Lable Data Inspector 分析和应用 总结 前言 近期在一些研发项目中使用Matlab/Simulink时&#xff0c;遇到了挺多费时费力的事情。所以利用晚上和周末时间&#xff0c;在这些方面深入研究了一下&#x…