2017年计算机二级office操作题:2017年计算机二级C++辅导实例编程:自己实现的memcpy

副标题:2017年计算机二级C++辅导实例编程:自己实现的memcpy

时间:2023-09-07 04:41:01 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。


  自己实现的memcpy

  没有考虑目标和源地址可能重复的情况,不知道除了这个方法之外不用汇编等方式还有没有更快的方法?至少我目前是想不出来:)

  void *my_memcpy(void *dst, void* src, int size)

  {

  int len = sizeof(long);

  long *pdst = (long*)dst;

  long *psrc = (long*)src;

  for (; size >= len; ++pdst, ++psrc, size -= len)

  {

  *pdst = *psrc;

  }

  for (len = size, size = 0; size < len; ++size)

  {

  *((char*)pdst + size) = *((char*)psrc + size);

  }

  return dst;

  }

  int main()

  {

  char src[] = "hello", dst[10] = {'\0'};

  my_memcpy(dst, src, 5);

  printf("dst = %s\n", dst);

  return 0;

  }

2017年计算机二级C++辅导实例编程:自己实现的memcpy.doc

本文来源:https://www.wddqw.com/Ny5n.html