mempcpy、stpcpy和stpncpy其实功能和memcpy、strcpy、strncpy的功能一样,区别在于前者返回的是复制之后的末尾地址,后者返回的是复制之后的起始地址。
头文件:string.h
函数名:void *mempcpy(void *dest, const void *src, size_t len);
功能:复制src的数据直到指定的字节数据(len)已经被复制完全到dest里面,返回的地址为dest随后的那一个字节
附上glibc-2.26里的mempcpy的原码:
/* Copy memory to memory until the specified number of bytes
has been copied, return pointer to following byte.
Overlap is NOT handled correctly. */
void *MEMPCPY (void *dest, const void *src, size_t len)
{
return memcpy (dest, src, len) + len;