当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 memmove()用法及代码示例



描述

C库函数void *memmove(void *str1, const void *str2, size_t n)副本n人物来自str2str1,但对于重叠的内存块,memmove() 是比 memcpy() 更安全的方法。

声明

以下是 memmove() 函数的声明。

void *memmove(void *str1, const void *str2, size_t n)

参数

  • str1- 这是指向要复制内容的目标数组的指针,type-casted 指向 void* 类型的指针。

  • str2- 这是一个指向要复制的数据源的指针,type-casted 指向一个 void* 类型的指针。

  • n- 这是要复制的字节数。

返回值

此函数返回一个指向目标的指针,即 str1。

示例

下面的例子展示了 memmove() 函数的用法。

#include <stdio.h>
#include <string.h>

int main () {
   char dest[] = "oldstring";
   const char src[]  = "newstring";

   printf("Before memmove dest = %s, src = %s\n", dest, src);
   memmove(dest, src, 9);
   printf("After memmove dest = %s, src = %s\n", dest, src);

   return(0);
}

让我们编译并运行上面的程序,将产生以下结果 -

Before memmove dest = oldstring, src = newstring
After memmove dest = newstring, src = newstring

相关用法


注:本文由纯净天空筛选整理自 C library function - memmove()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。