From 550a36ba887d71fc45dfd45b7e1f80fceb8f02ff Mon Sep 17 00:00:00 2001 From: Amoelle Date: Thu, 29 May 2025 23:23:42 +0300 Subject: [PATCH] add new functions --- common.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/common.c b/common.c index 480d389..e273a27 100644 --- a/common.c +++ b/common.c @@ -62,3 +62,37 @@ void printf(const char *fmt, ...) { end: va_end(vargs); } + +void *memcpy(void *dst, const void *src, size_t n) { + uint8_t *d = (uint8_t *) dst; + const uint8_t *s = (const uint8_t *) src; + while (n--) + *d++ = *s++; + return dst; +} + +void *memset(void *buf, char c, size_t n) { + uint8_t *p = (uint8_t *) buf; + while (n--) + *p++ = c; + return buf; +} + +char *strcpy(char *dst, const char *src) { + char *d = dst; + while (*src) + *d++ = *src++; + *d = '\0'; + return dst; +} + +int strcmp(const char *s1, const char *s2) { + while (*s1 && *s2) { + if (*s1 != *s2) + break; + s1++; + s2++; + } + + return *(unsigned char *)s1 - *(unsigned char *)s2; +}