📄 memcpy.c
字号:
/***********************************************************************\
* Copyright 1990 Software Development Systems, Inc. *
* all rights reserved *
\***********************************************************************/
#include <string.h>
#define SRCL ((unsigned long*)src)
#define DSTL ((unsigned long*)dst)
#define ENDL ((unsigned long*)end)
void *memcpy ( s1, s2, n )
void *s1;
const void *s2;
size_t n;
{
register unsigned char *src = (unsigned char *)s2;
register unsigned char *dst = (unsigned char *)s1;
register unsigned char *end = src;
end += n;
#if !_TARG_Z80 && !_TARG_HD64180
if ( n >= 16 && !(((unsigned long)dst|(unsigned long)src)&3) )
{
n &= sizeof( unsigned long ) - 1 ;
end -= n;
while ( SRCL < ENDL ) *DSTL++ = *SRCL++;
end += n;
}
#endif
while ( src < end ) *dst++ = *src++;
return s1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -