memops-asm-lib.c
来自「用于进行gcc测试」· C语言 代码 · 共 86 行
C
86 行
extern void abort (void);extern int inside_main;typedef __SIZE_TYPE__ size_t;#define TEST_ABORT if (inside_main) abort()void *my_memcpy (void *d, const void *s, size_t n){ char *dst = (char *) d; const char *src = (const char *) s; while (n--) *dst++ = *src++; return (char *) d;}voidmy_bcopy (const void *s, void *d, size_t n){ char *dst = (char *) d; const char *src = (const char *) s; if (src >= dst) while (n--) *dst++ = *src++; else { dst += n; src += n; while (n--) *--dst = *--src; }}void *my_memset (void *d, int c, size_t n){ char *dst = (char *) d; while (n--) *dst++ = c; return (char *) d;}voidmy_bzero (void *d, size_t n){ char *dst = (char *) d; while (n--) *dst++ = '\0';}void *memcpy (void *d, const void *s, size_t n){ void *result = my_memcpy (d, s, n); TEST_ABORT; return result;}voidbcopy (const void *s, void *d, size_t n){ my_bcopy (s, d, n); TEST_ABORT;}void *memset (void *d, int c, size_t n){ void *result = my_memset (d, c, n); TEST_ABORT; return result;}voidbzero (void *d, size_t n){ my_bzero (d, n); TEST_ABORT;}#ifdef __vxworks/* The RTP C library uses bfill, which is defined in the same file as bzero and bcopy. */#include "lib/bfill.c"#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?