【C库函数】memmove函数

简介: memmove函数

memmove

       拷贝内存块到目标空间(目标地址和拷贝内容的地址可重叠)

函数原型

void*memmove(void*dest,constvoid*src,size_tcount);

参数讲解

参数 dest src count
解析 目标空间地址 要拷贝内容空间源地址 拷贝内容字节数

返回值讲解

返回目标空间的起始地址

函数讲解

相同点

       memmove函数跟memcpy函数注意细节大致相同主要为两点

1、 我们一定要注意memmove第三个参数传的是要传内容的字节数

我们想把arr1中前五个元素传中arr2,在memmove就要写20。为什么呢?因为arr1为整型数组,其中包含的元素也是整型,是4个字节。而我们要传递五个整型,所以就是4*5个字节


2、目的空间大小一定要能容纳memcpy所拷贝的内容


如果拷贝在内容超过目的空间大小,那么就会溢出 编译器会报出警告

  一般使用细节很memcpy一样,请参考:memcpy函数详解

不同点

memmove跟memcpy唯一一点不一样的是memmove解决了目标地址和拷贝内容的地址重叠的拷贝的问题(这一点memcpy也可以了,但是之前memcpy好像不能)

memmove函数具体实现可以参考这篇:模拟实现memmove函数

相关文章
|
2月前
|
安全 程序员 C语言
探索C语言库函数:字符串拷贝函数strcpy
探索C语言库函数:字符串拷贝函数strcpy
21 0
|
8月前
|
C语言
【C语言】memcpy函数和memmove函数使用和模拟实现
【C语言】memcpy函数和memmove函数使用和模拟实现
47 0
|
2月前
|
编译器 C语言 C++
【C语言】strcpy()函数(字符串拷贝函数详解)
【C语言】strcpy()函数(字符串拷贝函数详解)
34 1
|
2月前
|
安全 程序员 C语言
探索C语言库函数:字符串拷贝函数strcpy()
探索C语言库函数:字符串拷贝函数strcpy()
9 0
|
4月前
memmove内存拷贝函数
memmove内存拷贝函数
17 0
|
9月前
|
C语言
模拟实现库函数,strtsr,memmove.
<1>主页:C语言的前男友 <2>知识讲解:模拟实现 库函数 strstr,memmove <3>创作者:C语言的前男友 <4>开发环境:Visual Studio 2022 <5>前言:学习了strstr,memnove等库里面的内存相关的函数,功能非常的强大。今天我们来模拟实现一下。
|
5月前
|
C语言
C语言零基础教程(memset,memcpy函数,memmove函数)
C语言零基础教程(memset,memcpy函数,memmove函数)
36 0
|
10月前
|
C语言
strcat函数和strncat函数--【C语言】
strcat函数和strncat函数--【C语言】
|
10月前
|
C语言
strstr函数strtok函数strerror函数详解【C语言】
strstr函数strtok函数strerror函数详解【C语言】