📜  C++ memmove()

📅  最后修改于: 2020-09-25 09:05:29             🧑  作者: Mango

C++中的memmove() 函数将指定字节的数据从源复制到目标。

memmove()原型

void* memmove( void* dest, const void* src,size_t count );

memmove() 函数采用三个参数:dest,src和count。调用memmove() 函数 ,它将计数字节从src指向的存储位置复制到dest指向的存储位置。

即使src和dest指针重叠,也会执行复制。这是因为复制的过程就好像创建了中间缓冲区一样,首先将数据从src复制到中间缓冲区,然后最终将其复制到dest。

它在头文件中定义。

memmove()参数

memmove()返回值

memmove() 函数返回目标目的地的指针dest。

示例:memmove() 函数的工作方式

#include 
#include 

using namespace std;

int main()
{
    int arr[10] = {8,3,11,61,-22,7,-6,2,13,47};
    int *new_arr = &arr[5];

    memmove(new_arr,arr,sizeof(int)*5);

    cout << "After copying" << endl;
    for (int i=0; i<10; i++)
        cout << arr[i] << endl;
    return 0;

}

运行该程序时,输出为:

After copying 8 3 11 61 -22 8 3 11 61 -22