.TH LIBSIMPLE_MEMELEMMOVE 3 libsimple .SH NAME libsimple_memelemmove, libsimple_memelemcpy \- copy or move elements within an array .SH SYNOPSIS .nf #include inline void *libsimple_memelemmove(void *\fIdest\fP, const void *\fIsrc\fP, int \fIelem\fP, size_t \fIwidth\fP, size_t \fIn\fP); inline void *libsimple_memelemcpy(void *\fIdest\fP, const void *\fIsrc\fP, int \fIelem\fP, size_t \fIwidth\fP, size_t \fIn\fP); #ifndef memelemmove # define memelemmove libsimple_memelemmove #endif #ifndef memelemcpy # define memelemcpy libsimple_memelemcpy #endif .fi .PP Link with .IR \-lsimple . .SH DESCRIPTION The .BR libsimple_memelemmove () and .BR libsimple_memelemcpy () functions copy .I n elements, each with the width .IR width , in .I src to .IR dest . However the copy stopes after the element .I elem (with size .IR width ) has been copied. .PP The arrays may overlap in the .BR libsimple_memelemmove () function but not in the .BR libsimple_memelemcpy () function. .SH RETURN VALUE The .BR libsimple_memelemmove () and .BR libsimple_memelemcpy () functions return a pointer directly behind the position of the element .I elem in .I dest after it was copied. If the element .I elem was not copied .I NULL is returned. .SH ERRORS The .BR libsimple_memelemmove () and .BR libsimple_memelemcpy () functions cannot fail. .SH ATTRIBUTES For an explanation of the terms used in this section, see .BR attributes (7). .TS allbox; lb lb lb l l l. Interface Attribute Value T{ .BR libsimple_memelemmove (), and .BR libsimple_memelemcpy () T} Thread safety MT-Safe T{ .BR libsimple_memelemmove (), and .BR libsimple_memelemcpy () T} Async-signal safety AS-Safe T{ .BR libsimple_memelemmove (), and .BR libsimple_memelemcpy () T} Async-cancel safety AC-Safe .TE .SH EXAMPLES None. .SH APPLICATION USAGE None. .SH RATIONALE None. .SH FUTURE DIRECTIONS None. .SH NOTES None. .SH BUGS None. .SH SEE ALSO .BR libsimple_rawmemelemmove (3), .BR libsimple_mempmove (3), .BR libsimple_mempcpy (3), .BR libsimple_strcmove (3), .BR libsimple_strncmove (3), .BR libsimple_memcmove (3), .BR memmove (3), .BR memcpy (3)