mempcpy, wmempcpy — copy memory area
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <string.h>
| void
            *mempcpy( | void *dest, | 
| const void *src, | |
| size_t n ); | 
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <wchar.h>
| wchar_t
            *wmempcpy( | wchar_t *dest, | 
| const wchar_t *src, | |
| size_t n ); | 
The mempcpy() function is
      nearly identical to the memcpy(3) function. It
      copies n bytes from
      the object beginning at src into the object pointed to
      by dest. But instead
      of returning the value of dest it returns a pointer to
      the byte following the last written byte.
This function is useful in situations where a number of objects shall be copied to consecutive memory positions.
The wmempcpy() function is
      identical but takes wchar_t type
      arguments and copies n wide characters.
void *
combine(void *o1, size_t s1, void *o2, size_t s2)
{
    void *result = malloc(s1 + s2);
    if (result != NULL)
        mempcpy(mempcpy(result, o1, s1), o2, s2);
    return result;
}
      This page is part of release 3.33 of the Linux man-pages project. A
      description of the project, and information about reporting
      bugs, can be found at http://man7.org/linux/man-pages/.
| Copyright 2002 Walter Harms (walter.harmsinformatik.uni-oldenburg.de) Distributed under GPL Heavily based on glibc infopages, copyright Free Software Foundation aeb, 2003, polished a little |