[Previous] [Contents] [Next]

memmove()

Copy bytes from one buffer to another

Synopsis:

#include <string.h>

void* memmove( void* dst,
               const void* src,
               size_t length );

Library:

libc

Description:

The memmove() function copies length bytes from the buffer pointed to by src to the buffer pointed to by dst. Copying of overlapping regions will be handled safely. Use the memcpy() function for greater speed when copying buffers that don't overlap.

Returns:

A pointer to the destination buffer (that is, the value of dst).

Examples:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main( void )
{
    char buffer[80];

    strcpy( buffer, "World");
    memmove( buffer+1, buffer, 79 );
    printf ("%s\n", buffer);
    
    return EXIT_SUCCESS;
}

produces the output:

WWorld

Classification:

ANSI

Safety:
Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes

See also:

memccpy(), memchr(), memcmp(), memcpy(), memicmp(), memset()


[Previous] [Contents] [Next]