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

樱花12e56手机优化助手下载

樱花12e56,手机优化助手下载,24视频网站建设,无锡网络公司平台目录 前言#xff1a; 一、头文件 二、memmove函数的作用 三、理解memmove函数的定义 1、返回类型 2、参数 四、使用memmove函数 案例1#xff1a; 案例2#xff1a; 五、解决数据拷贝之前被覆盖的方法 六、模拟实现memmove函数 前言#xff1a; 上一篇博客#xff0c;我… 目录 前言 一、头文件 二、memmove函数的作用 三、理解memmove函数的定义 1、返回类型 2、参数 四、使用memmove函数 案例1 案例2 五、解决数据拷贝之前被覆盖的方法 六、模拟实现memmove函数 前言 上一篇博客我们已经对memcpy函数进行了学习也指明了memcpy函数不能支持源位置与目标位置相交的情况的拷贝而在这种情况下我们就要使用memmove函数了。所有今天我们来深入学习memmove函数。希望大家可以认真看完。 一、头文件 memmove函数的头文件是和memcpy函数的头文件相同的都是cstringstring.h同样同样memmove函数也是面向所有数据类型的故也称其为内存函数。 C语言 #include string.h C #include cstring 二、memmove函数的作用 将 num个 字节的数据从 source 指向的位置复制到 destination 指向的内存块。复制就像使用中间缓冲区一样进行从而允许目标位置和源位置重叠 三、理解memmove函数的定义 void * memmove ( void * destination, const void * source, size_t num ); 1、返回类型 在C语言标准库函数的定义中memmove函数的返回类型为一个void*的指针用于返回目标位置的地址由于void*指针的数据类型不固定性可用于返回所有类型的数据。 2、参数 在C语言标准库函数的定义中memmove函数的参数有三个第一个为void*destination不固定类型的指针用于接收目标位置的地址第二个为const void*source不固定类型的指针前用const修饰使程序不可通过该指针更改其指向的数据用于接收源头位置的地址第三个为size_t num用于表示要拷贝的数据的大小单位是字节。 四、使用memmove函数 案例1 #include string.h int main() {int arr1[10] { 1,2,3,4,5,6,7,8,9,10 };memmove(arr1, arr1 2, 20);return 0; } 函数代码运行前的监视结果  函数代码运行后的监视结果  案例2 #include string.h int main() {int arr1[10] { 1,2,3,4,5,6,7,8,9,10 };memmove(arr1 2, arr1, 20);return 0; } 函数代码执行前的监视结果 函数代码执行后的监视结果 * 这里强调一下在案例2中若使用memcpy函数其执行结果将为 为什么会出现这种情况 因为从memcpy函数的实现代码可知在memcpy函数中数组的元素3、4、5已经在对其进行拷贝之前便已经被1、2覆盖掉了。 这便是memcpy函数定义的局限性。 五、解决数据拷贝之前被覆盖的方法 对会被覆盖的数据先进行拷贝对不会被覆盖的数据后进行拷贝。而要完成这点必须区分源头位置与目标位置的第一个元素的大小。 六、模拟实现memmove函数 #include assert.hvoid* my_memmove(void* dest, const void* src, size_t num) {void* ret dest;assert(dest src);if (dest src){//从前往后while (num--){*(char*)dest *(char*)src;dest (char*)dest 1;src (char*)src 1;//*((char*)dest) *((char*)src);}}else{//从后往前while(num--){*((char*)dest num) *((char*)src num);}}return ret; }解释 当源位置地址大于目标位置地址从前往后拷贝否则从后往前拷贝。要是不太理解可以试着用画图来表示数据的拷贝过程 每日一学今天你又超过了百分之九十九的人。 如果本篇文章对你有帮助请点个关注和赞吧 如果对本篇文章有疑惑欢迎在评论区讨论。 注“每天学习一个字符串类函数”类型文章已整理为专栏欢迎大家订阅。
http://www.hkea.cn/news/14387983/

相关文章:

  • 开电商网站需要多少钱重庆网站建设如何
  • 怎么做网站链接天猫运营培训
  • 贵州省住房和城乡建设厅网网站网络推广优化方法
  • 我想克隆个网站 怎么做三水网站建设哪家好
  • 青海网站如何建设软件开发和网站开发
  • 哪些网站做的美网站一次性链接怎么做的
  • 中企动力做网站好吗南昌网站建设和推广
  • 佛山做外贸网站的公司吗全网搜索软件
  • 网站开发服务 税网站建设哪家g好
  • 江西旺达建设工程有限公司网站怎么做一个网站平台
  • 免费建设网站wordpress重置密码忘记
  • 静态手机网站seo文章代写平台
  • 四川住房城乡建设周刊网站wordpress 主题 教程
  • 有哪些做的很漂亮的网站公司网站建站要多少钱一年
  • 网站建设学什么语音网站备案需要资料
  • mip网站实例h5页面和小程序的页面有什么区别
  • 社交网络推广方法重庆网站推广优化软件业务
  • wordpress制作网站教程湖北手机版建站系统价格
  • 普通门户网站开发价格wordpress 此网页包含重定向循环
  • 网站做百度百科的好处同城手机网站开发
  • 72建站网杭州建设网双标化工地2022年
  • 榆垡网站建设洛阳制作网站公司吗
  • 绍兴市交通建设有限公司网站财务软件费用计入什么科目
  • 哪个网站做h5好宁波网站制作方案
  • 站群系统的优劣什么样的网站适合推广
  • 天津市建设 银行网站教做视频的网站
  • 网站建设设计计划表天津网站建设定制
  • 怎样做网站 app教程上海网站建设电话
  • 上海建设网站平台自己做的网站响应速度慢
  • 喷码机营销型网站网址导航主页哪个好