memmove()
QNX SDP8.0C Library ReferenceAPIDeveloper
Copy bytes from one buffer to another, handling overlapping memory correctly
Synopsis:
#include <string.h>
void* memmove( void* dst,
const void* src,
size_t length );
Arguments:
- dest
- A pointer to where you want the function to copy the data.
- src
- A pointer to the buffer that you want to copy data from.
- length
- The number of bytes to copy.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
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 is handled safely. Use memcpy() 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:
Safety: | |
---|---|
Cancellation point | No |
Signal handler | Yes |
Thread | Yes |
Page updated: