当前位置: 首页 > news >正文

陕西服装网站建设无锡专业网站建设公司

陕西服装网站建设,无锡专业网站建设公司,微信代运营合作方案,门户网站的三大基本特征欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,欢迎指出~ 目录 memcpy函数的使用和模拟实现 memcpy函数的使用 memcpy函数的模拟实现 memmove的使用和模拟实现 memmove的使用 memmove的模拟实现 memset函数的使用 memcmp函数…

欢迎关注个人主页:逸狼


创造不易,可以点点赞吗~

如有错误,欢迎指出~


目录

memcpy函数的使用和模拟实现

memcpy函数的使用

memcpy函数的模拟实现

memmove的使用和模拟实现

memmove的使用

memmove的模拟实现

memset函数的使用

memcmp函数的使用


memcpy函数的使用和模拟实现

memcpy函数的使用

  • 函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。
  • 如果source和destination有任何的重叠,复制的结果都是未定义的。(不能自我拷贝)

拷贝数字

拷贝字符

memcpy遇到 '\0' 的时候并不会停下来

memcpy函数的模拟实现

#include<assert.h>
#include<stdio.h>
//              目标空间,原空间,拷贝的字节数,void*用于接受任意类型的地址
void* my_memcpy(void* dest, const void* src, size_t num)
{//保留目标空间起始地址void* ret = dest;assert(dest && src);while (num--){*(char*)dest = *(char*)src;//强制类型转换 是临时的效果dest = (char*)dest + 1;src = (char*)src + 1;}return ret;
}int main()
{int arr1[10] = { 1,2,3,4,5,6,7,8,9,10 };int arr2[10] = { 0 };my_memcpy(arr2, arr1, 5*sizeof(int));for (int i = 0; i < 10; i++){printf("%d ", arr2[i]);}return 0;
}

memmove的使用和模拟实现

memmove的使用

memmove函数处理的 源内存块 和 ⽬标内存块 是可以重叠的。(memcpy不能)

自我拷贝

memmove的模拟实现

#include<assert.h>
#include<stdio.h>
void* my_memmove(void* dest, const void* src, size_t num)
{void* ret = dest;assert(dest && src);//从前向后拷贝if (dest < src)//dest在src的前面 1 2 3 4 5 6 7 8 9 10{while (num--){*(char*)dest = *(char*)src;dest = (char*)dest + 1;src = (char*)src + 1;}}//从后向前拷贝else //dest在src的后面 1 2 3 4 5 6 7 8 9 10{while (num--){*((char*)dest+num) = *((char*)src+num);}}return ret;
}int main()
{int arr1[10] = { 1,2,3,4,5,6,7,8,9,10 };my_memmove(arr1+2, arr1, 5*sizeof(int));for (int i = 0; i < 10; i++){printf("%d ", arr1[i]);}return 0;
}

注意

  • 在c语言中规定memcpy拷贝的是不重叠的内存
  • memmove拷贝的是重叠的内存,
  • 但是在VS2022中,memcpy也可以重叠拷贝

memset函数的使用

memset是⽤来设置内存的,将内存中的值以字节为单位设置成想要的内容。

memcmp函数的使用

⽐较从ptr1和ptr2指针指向的位置开始,向后的num个字节

http://www.yayakq.cn/news/477563/

相关文章:

  • 成都网站建设交易长沙营销型网页制作公司
  • wordpress建站模板丰镇网络推广
  • wordpress产品网站自己在本地建的网站 别人怎么访问教程
  • 棋牌类网站开发优化电池充电什么意思
  • 雍鑫建设集团网站环保类网站模板免费下载
  • 黑龙江住房和城乡建设部网站太仓市住房和城乡建设局官方网站
  • 品划网络做网站如何制作一个个人网站
  • 新民网站建设价格咨询asp网站发布ftp
  • 58网站建设多少钱电商网站开发前景
  • 网站建设 技术方案义乌网站建设yw126
  • 哈尔滨网站建设公司那家好免费货源在线永久
  • 最简单的网站怎么做dedecms 古典棕色大气风格中药医药企业网站模板源码
  • 大连做网站哪家服务好企业咨询公司经营范围
  • 手机软件下载网站推荐网站备案信息批量查询
  • wordpress获取当前分类下的子分类南昌网站优化网站开发
  • 江苏省执业建设注册中心网站如何建设数据库搜索网站
  • 网站开发者兼容模式出错东莞网站建设推广费用
  • 财佰通突然做网站维护北京建筑有限公司
  • 一个页面对网站如何建设濮阳专业做网站公司
  • 深圳网站营销公司简介wordpress权限acl
  • 苏州高端做网站开源手机网站建站系统
  • 免费发布黄页广告网站asp.net网站本机访问慢
  • 天津 网站建设公司电商平台怎么运营的
  • 网站流量统计工具有哪些绿色商城网站模板
  • 先网站开发后软件开发品牌活动策划方案
  • 连云港网站制作公司口碑好2013网站怎么备案
  • 高清logo网站iis做网站文件下载
  • 天河网站建设优化wordpress网站搭建教程视频
  • 网站备案单位查询DW做旅游网站毕业设计
  • 电影网站开发与设计如何查询公司的详细信息