鱼C论坛

 找回密码
 立即注册
查看: 6104|回复: 1

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

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

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

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

x
memmove 函数文档


函数概要:

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


函数原型:
#include <string.h>
...
void *memmove(void *dest, const void *src, size_t n);

参数解析:

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


返回值:

返回 dest 指向的内存空间。


演示:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

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

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

        ptr = (char *)malloc(length * sizeof(char));
        if (ptr == NULL)
        {
                exit(1);
        }

        memset(ptr, 0, length);
        memmove(ptr, str, length);

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

        return 0;
}
搜狗截图20161216225048.png

评分

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

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-23 10:50:39 | 显示全部楼层
沙发
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-22 09:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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