memcpy_s
是C++11标准中新增的函数,用于安全地复制内存块。它的作用是将源内存块中的数据复制到目标内存块中,同时可以指定要复制的字节数,以及目标内存块的大小。
与传统的memcpy
函数不同的是,memcpy_s
在复制数据之前会检查目标内存块的大小是否足够,以避免缓冲区溢出的问题。如果目标内存块的大小不足以容纳源内存块中的数据,则会返回一个错误码,并且不会执行复制操作。
memcpy_s
的函数原型如下:
errno_t memcpy_s(void* dest, size_t destSize, const void* src, size_t count);
其中,dest
表示目标内存块的指针,destSize
表示目标内存块的大小,src
表示源内存块的指针,count
表示要复制的字节数。
memcpy_s
函数返回一个errno_t
类型的错误码,如果复制成功则返回0,否则返回一个非零的错误码。