- C Library - Home
- C Library - <assert.h>
- C Library - <complex.h>
- C Library - <ctype.h>
- C Library - <errno.h>
- C Library - <fenv.h>
- C Library - <float.h>
- C Library - <inttypes.h>
- C Library - <iso646.h>
- C Library - <limits.h>
- C Library - <locale.h>
- C Library - <math.h>
- C Library - <setjmp.h>
- C Library - <signal.h>
- C Library - <stdalign.h>
- C Library - <stdarg.h>
- C Library - <stdbool.h>
- C Library - <stddef.h>
- C Library - <stdio.h>
- C Library - <stdlib.h>
- C Library - <string.h>
- C Library - <tgmath.h>
- C Library - <time.h>
- C Library - <wctype.h>
- C Programming Resources
- C Programming - Tutorial
- C - Useful Resources
C library - memmove() function
The C library memchr() function is used to copy a block memory from one location to another. Typically, this function state the count bytes of data from a source location to the destination.
Syntax
Following is the syntax of the C library memchr() method −
void *memmove(void *dest_str, const void *src_str, size_t numBytes)
Parameters
This function accepts the following parameters
*dest_str − This is a pointer for destination array where the content is to be copied. It is type-casted to a pointer of type void*.
*src_str − The is a second pointer that denote the source of data to be copied. It is also type-casted to a pointer of type void*.
numBytes − This parameter refer to number of bytes to be copied.
Return Value
This function returns a pointer to the destination i.e *dest_str.
Example 1
Following is the basic C library function memchr() to change the postion of strings.
#include <stdio.h>
#include <string.h>
int main () {
char dest_str[] = "oldstring";
const char src_str[] = "newstring";
printf("Before memmove dest = %s, src="/?originalUrl=https%3A%2F%2Fwww.tutorialspoint.com%2F%25s%2Fn", dest_str, src_str);
memmove(dest_str, src_str, 9);
printf("After memmove dest = %s, src="/?originalUrl=https%3A%2F%2Fwww.tutorialspoint.com%2F%25s%2Fn", dest_str, src_str);
return(0);
}
Output
The above code produces the following output−
Before memmove dest = oldstring, src="/?originalUrl=https%3A%2F%2Fwww.tutorialspoint.com%2FnewstringAfter%2520memmove%2520dest%2520%3D%2520newstring%2C%2520src%2520%3D%2520newstring%253C%2Fpre">Example 2
In the below example, we use the puts() method for the destination string. This method add the string with a newline character and returns an integer value. When copying the content from the source string to the destination, we utilize the memmove() method.
#include <stdio.h> #include <string.h> int main() { char dest_str[] = "Tutorialspoint"; char src_str[] = "Tutors"; puts("source string [src_str] before memmove:-"); puts(dest_str); /* Copies contents from source to destination */ memmove(dest_str, src_str, sizeof(src_str)); puts("\nsource string [src_str] after memmove:-"); puts(dest_str); return 0; }Output
On executing the above code, we get the following output−
Source string [src_str] before memmove:- Tutorialspoint Source string [src_str] after memmove:- TutorsAdvertisements