C语言模拟实现memcmp函数
memcmp函数:
int memcmp(const void *buf1, const void *buf2, size_t count);
其作用类似于strcmp,也是逐字节比较大小,从低位到高位依次进行
接收void类型,所以需要强制类型转换后才能解引用操作。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<assert.h>int MyMemcmp(const void *buf1, const void *buf2, size_t count)
{assert(buf1 != NULL);assert(buf2 != NULL);while (count--){//需要强制类型转换成char类型,进行字节位比较if (*(char*)buf1 != *(char*)buf2) //如果该字节数字不同,返回其差值{return *(char*)buf1 - *(char*)buf2;}buf1 = (char*)buf1 + 1; buf2 = (char*)buf2 + 1;}return 0; //相等返回0
}int main()
{int arr1[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };int arr2[10] = { 1, 2, 3 };printf("%d\n", MyMemcmp(arr1, arr2, 12));return 0;
}
C语言模拟实现memcmp函数相关推荐
- C语言--模拟实现strncpy函数
C语言–模拟实现strncpy函数 一.strncpy说明 strncpy格式如下 char* strncpy(char* destination, const char* source, size_ ...
- 用C语言模拟实现字符函数与字符串函数
用C语言模拟实现字符函数与字符串函数 strncat.strncpy.atoi 若使用本文相关代码,还请动手点个赞!!! #define _CRT_SECURE_NO_WARNINGS 1 #incl ...
- C语言模拟实现memcpy函数
void * memcpy ( void * destination, const void * source, size_t num ); 该函数是内存操作的拷贝函数,函数memcpy从source ...
- 用C语言模拟实现memcpy函数,memmove函数
一. memcpy函数 void * memcpy ( void * destination, const void * source, size_t num ); 复制内存块 将num字节的值从源指 ...
- C语言strlen等系列函数详细总结
目录 一.strlen函数 二.C语言模拟实现strlen函数的3种方法 三.str系列函数 strcpy函数 strcat函数 strcat函数模拟实现 strcmp模拟实现 一.strlen函数 ...
- 如何用C语言实现各种字符函数和字符串函数strstr、memcpy、memmove、strlen、strcpy、strcmp、strcat
用C语言模拟实现字符函数与字符串函数 strstr.memcpy.memmove.strlen.strcpy.strcmp.strcat 若使用本文相关代码,还请动手点个赞!!! #define _C ...
- C语言 模拟实现 strlen strcat strcpy函数
strlen函数 库函数strlen:strlen所作的是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0' ...
- C语言 strstr函数的用法及模拟实现strstr函数
C语言 strstr函数的用法及模拟实现strstr函数 一.strstr函数的用法 二.模拟实现strstr函数的功能 一.strstr函数的用法 1.strstr函数原型:char* strstr ...
- C++57个入门知识点_17 类的访问权限及C语言模拟类的封装(类的私有权限突破方法:编译期进行权限检查,运行期通过指针修改类的私有成员变量;利用函数指针对结构体中成员变量进行修改;CPU大小尾排列)
接上篇:C++57个入门知识点_16 类的标准写法(类名.成员变量.成员函数及对象命名规则:成员变量一般为私有,成员函数为公有并暴露给外部使用成员变量:防止类过大,声明写在.h,实现写在.cpp,调用 ...
- 【c语言】模拟实现字符串函数(上)
关关难过关关过 前路漫漫亦灿烂 今天 阿紫 就带领大家一起挑战字符串函数的模拟实现 目录 1.模拟实现strlen 1.1函数介绍 1.2函数的模拟实现 2.模拟实现strcpy 2.1函数介绍 2. ...
最新文章
- 【Python】开启Pandas进阶:图解Pandas透视表、交叉表
- tp框架命名空间使用(namespace,use,as,\)
- JS_arguments
- [COGS2426][HZOI 2016]几何
- layui爱准挂更新密码静态WEB页(临时)
- 若依集成jwt实现登录授权访问(单体版)
- 对“xxx”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。...
- 借助Sigar API获取CPU相关信息
- php导出Excel表格(无插件)
- C++多线程编程(真实入门)
- SQL Server 的完整下载安装教程
- 计算机cad名词解释,CAD全部名词解释
- 分享几个快乐有趣的网站
- 厦大计算机 专硕 分数线,厦门大学2020年专硕复试分数线
- mqdf python_GitHub - jugg1024/court_recognition
- C语言度化为度分秒的方法,一句话转换度:分:秒格式为度.度度度
- 《 指数基金投资指南 》by 银行螺丝钉 - 笔记 - 3小尾巴~
- python生成基础头像_python个性化头像
- 打开计算机管理窗口命令,Win7如何打开命令行窗口?打开命令行窗口的方法
- 英国情报机构授权开设“网络间谍”硕士专业!
热门文章
- 翟菜花:资本退烧、开源节流时代,品质服务保障成携程终极利器
- 阿里知产研究院报告:侵犯知识产权行为的罪与罚 | 湖畔新知汇
- Windows 7/Vista 桌面快捷方式小箭头变成黑块,如何恢复?
- 思腾合力-SCM集群下载镜像步骤
- 初学键盘计算机输入时注意,打字练习说明.doc
- word 的使用 —— 分页符与分节符
- 【校园卡】2020校园卡最近消息,电信联通默认都增加10G全国流量
- 【华为电脑管家】打开多屏协同会自动修改微软拼音输入法兼容性的解决方案
- STM32F103_study67_The punctual atoms(STM32 OLED display experiment)
- 【转】利用百度BAE3.0搭建原版WORDPRESS博客详细教程