C标准库内部实现

从 src 复制 n 个字符到 dest。

void *memcpy(void *dest, const void *src, size_t n)

{

  char *pdest = (char *)dest;

  char *psrc = (char *)src;

  assert((pdest != NULL) && (psrc != NULL));  /* 检查输入参数是不是为空指针 */

  assert((pdest >= psrc + n) || (psrc >= pdest +n) );  /* 检查拷贝地址与源地址是否重叠 */

  while(n-->0)

  {

    *pdest++ = *psrc++;

  }

  return (pdest);

}

posted @ 2020-01-18 12:37  ryan_ni  阅读(243)  评论(0)    收藏  举报