用人话讲懂memcmp函数的理解和使用

简介: 用人话讲懂memcmp函数的理解和使用

---由于本人使用的是大白话来讲解memcmp函数的使用,所以可能有些部分可能会有些不准确(见谅),如果想十分严谨的了解memcmp函数,请移步其他文章。

               -------那么不废话,我们直接开始

1.memcmp函数的使用所需的头文件

2.函数的作用

                       --------比较两个数据是否相同(不局限于字符串)

如图(解释):

(这里先使用字符串来说明),这个函数就是从第一个数据(字符)往后一个一个的比较,直到从哪一对字符比较出大小(不一样)就结束,然后返回函数的结果

3.函数的大致解释

(1)  int ,表明这个函数的返回值是一个整型,简单来说就是这个函数使用完后的结果是一个数

(2)  memcmp这是函数的名字

(3)  const(作用就是让后面这个指针所指的内容不能被修改,起修饰作用),void * ptr1 ,就是一个指针,表明你需要在这里填一个指针(不了解指针是什么的可以搜一下)

(4)  const(作用就是让后面这个指针所指的内容不能被修改,起修饰作用),void * ptr2 ,就是一个指针,表明你也需要在这里填一个指针

(5)  size_t (表明这个数是非负数,起修饰作用),和num连起来表明你这里需要填一个非负数

4.例子

(1)字符串比较

注:函数使用的时候第三个参数是你想要比较的字节数(作者这里随便写了个8,因为一个char类型为一个字节,所以这里表明比较前8个字节,读者可以根据自己想比较的字节数来填写)

       memcmp函数的返回值有三种情况:

       (1)  arr1数据大于arr2数据,    返回值为正数

       (2)  arr1数据小于arr2数据,    返回值为负数  

       (3)  arr1数据等于arr2数据,    返回值为0

(2)数字比较大小

相关文章
485的自动收发及应用
485的自动收发及应用
|
缓存 算法 程序员
C++STL底层原理:探秘标准模板库的内部机制
🌟蒋星熠Jaxonic带你深入STL底层:从容器内存管理到红黑树、哈希表,剖析迭代器、算法与分配器核心机制,揭秘C++标准库的高效设计哲学与性能优化实践。
C++STL底层原理:探秘标准模板库的内部机制
|
传感器 机器学习/深度学习 监控
基于STM32的人体健康监测系统设计与实现(温度、心率、老人摔倒检测)【开源免费】
本文介绍了一个基于 STM32 微控制器 的健康监测系统,涵盖了 温度采集、心率监测、跌倒检测 等核心功能,并通过蓝牙实现数据传输与报警提醒。该系统在家庭养老、运动监控、医疗健康等场景具有广阔的应用前景。未来可以结合 AI+物联网 技术,进一步提升智能化和实用性。
2835 12
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
2730 10
|
NoSQL Linux 编译器
GDB符号表概念和在Linux下获取符号表的方法
通过掌握这些关于GDB符号表的知识,你可以更好地管理和理解你的程序,希望这些知识可以帮助你更有效地进行调试工作。
695 16
|
安全 5G 网络性能优化
IEEE802.1, IEEE802.3和IEEE802.11的分类(仅为分类)
IEEE802.1, IEEE802.3和IEEE802.11的分类(仅为分类)
1917 4
|
JavaScript 前端开发 API
Vue 3新特性详解:Composition API的威力
【10月更文挑战第25天】Vue 3 引入的 Composition API 是一组用于组织和复用组件逻辑的新 API。相比 Options API,它提供了更灵活的结构,便于逻辑复用和代码组织,特别适合复杂组件。本文将探讨 Composition API 的优势,并通过示例代码展示其基本用法,帮助开发者更好地理解和应用这一强大工具。
532 2
|
机器学习/深度学习 存储 人工智能
【AI系统】TVM 实践案例
本文探讨了如何利用AI编译器在新硬件上部署神经网络,重点介绍了TVM的工作流程,包括模型导入、转换为Relay、TE和TIR、自动调优、编译为机器码等步骤。文章还讨论了算法层面上的算子优化、量化技术,以及编译层面对量化模型的解析和计算图优化。此外,还介绍了TVM的BYOC框架,允许硬件加速器供应商通过即插即用的方式集成代码工具,实现高效编译和优化。最后,文章提及了算子和网络仿真的重要性,确保新硬件平台上的模型正确性和性能。
892 2
|
监控
IEC104初学者教程,第八章:总召唤流程详解
IEC 60870-5-104(简称IEC104)是一种用于远程控制和监控系统的通信协议。它广泛应用于电力系统和其他工业自动化系统中。总召唤(General Interrogation,简称GI)是IEC104协议中的一个重要功能,用于从远程终端设备(RTU)获取其当前的状态和数据。总召唤过程的基本步骤如下:
1358 5
IEC104初学者教程,第八章:总召唤流程详解
|
网络安全 开发者 Python
VSCode远程切换Python虚拟环境
VSCode远程切换Python虚拟环境
1775 1