memcpy()

memcpy() is used to copy a block of memory from a location to another. It is declared in string.h

Below is a sample C program to show working of memcpy().

/* A C program to demonstrate working of memcpy */
#include <stdio.h> 
#include <string.h> 

int main () 
{ 
char str1[] = "Geeks"; 
char str2[] = "Quiz"; 

puts("str1 before memcpy "); 
puts(str1); 

/* Copies contents of str2 to sr1 */
memcpy (str1, str2, sizeof(str2)); 

puts("\nstr1 after memcpy "); 
puts(str1); 

return 0; 
} 

Output:

str1 before memcpy 
Geeks

str1 after memcpy 
Quiz

Notes:
1) memcpy() doesn’t check for overflow or \0
2) memcpy() leads to problems when source and destination addresses overlap.

memmove() is another library function that handles overlapping well.

猜你喜欢

转载自www.cnblogs.com/JasperZhao/p/12810298.html
今日推荐