首页 > 编程 > C > 正文

C语言中memcpy 函数的用法详解

2020-01-26 14:02:08
字体:
来源:转载
供稿:网友

C语言中memcpy 函数的用法详解

memcpy(内存拷贝函数)

c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。

void* memcpy(void* destination, const void* source, size_t num);void* dest 目标内存  const void* src 源内存  size_t num 字节个数

库中实现的memcpy函数

struct {   char name[40];   int age; } person, person_copy;  int main() {   char myname[] = "Pierre de Fermat";   /* using memcpy to copy string: */   memcpy(person.name, myname, strlen(myname) + 1);   person.age = 46;   /* using memcpy to copy structure: */   memcpy(&person_copy, &person, sizeof(person));   printf("person_copy: %s, %d /n", person_copy.name, person_copy.age);   system("pause");   return 0; } 


模拟实现memcpy函数

void* My_memcpy(void* dest, const void* src, size_t num) {   assert(dest);   assert(src);   void* p = dest;   while (num--)   {     *(char*)dest = *(char*)src;     dest = (char*)dest + 1;     src = (char*)src + 1;   }   return p; }  int main() {   char dest[56];   char src[] = "abcb  xxxx zzzzzzzzzzzzy";   printf("%s/n", My_memcpy(dest, src, strlen(src) + 1));   system("pause");   return 0; } 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选