鱼C论坛

 找回密码
 立即注册
查看: 2289|回复: 0

[函数快查] memmove -- 拷贝内存空间

[复制链接]
发表于 2016-12-16 16:47:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
memmove 函数文档


函数概要:

memmove 函数从 src 指向的内存空间拷贝 n 个字节到 dest 指向的内存空间。为了避免因为两个内存空间出现重叠而导致的悲剧,该函数会先将 src 指向的内存空间拷贝到一个临时的数组中,完了再从临时数组拷贝到目标内存空间。


函数原型:

  1. #include <string.h>
  2. ...
  3. void *memmove(void *dest, const void *src, size_t n);
复制代码


参数解析:

参数 含义
dest指向目标内存空间
src指向源内存空间
n指定要拷贝到 dest 指向空间的前 n 个字节


返回值:

返回 dest 指向的内存空间。


演示:

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>

  4. int main(void)
  5. {
  6.         char str[] = "I love FishC.com!";
  7.         char *ptr;
  8.         int length = sizeof(str);

  9.         printf("length = %d\n", length);

  10.         ptr = (char *)malloc(length * sizeof(char));
  11.         if (ptr == NULL)
  12.         {
  13.                 exit(1);
  14.         }

  15.         memset(ptr, 0, length);
  16.         memmove(ptr, str, length);

  17.         printf("%s\n", ptr);

  18.         return 0;
  19. }
复制代码

搜狗截图20161216225048.png

评分

参与人数 2荣誉 +10 鱼币 +10 贡献 +6 收起 理由
wanting-for + 5 + 5 + 3 感谢小甲鱼,小可爱,爱您摸摸哒
annqlm + 5 + 5 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1

GMT+8, 2020-12-5 09:38

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表