首页 /编程语言和算法/C/C++
 内存拷贝CopyMemory与MoveMemory
2月28日 15:48

CopyMemory是一个Windows API函数,它能将一块内存数据从一个位置复制到另一个位置;

函数原型:

void CopyMemory(
PVOID  Destination,    //要复制内存块的目的地址。
const VOID   *Source,   //要复制内存块的源地址。
 SIZE_T Length          //指定要复制内存块的大小,单位为字节
);

该函数没有返回值

如果目的块与源块有交叠,结果是不可预料的,因为CopyMemory没有考虑重叠的部分,因此他不能保证重叠部分是否被复制,

可以使用MoveMemory可以解决这个问题

MoveMemory函数原型

VOID RtlMoveMemory(
VOID UNALIGNED *Destination,       //要复制内存块的目的地址。
const VOID UNALIGNED *Source,    //要复制内存块的源地址。
SIZE_T Length                                    //指定要复制内存块的大小,单位为字节
);

该函数没有返回值


 
全部回复(0)
首页 | 电脑版 |