#include "vof.h" | |
int strlen(const char *s) | |
{ | |
int len = 0; | |
while (*s != 0) { | |
len += 1; | |
s += 1; | |
} | |
return len; | |
} | |
int strcmp(const char *s1, const char *s2) | |
{ | |
while (*s1 != 0 && *s2 != 0) { | |
if (*s1 != *s2) { | |
break; | |
} | |
s1 += 1; | |
s2 += 1; | |
} | |
return *s1 - *s2; | |
} | |
void *memcpy(void *dest, const void *src, size_t n) | |
{ | |
char *cdest; | |
const char *csrc = src; | |
cdest = dest; | |
while (n-- > 0) { | |
*cdest++ = *csrc++; | |
} | |
return dest; | |
} | |
int memcmp(const void *ptr1, const void *ptr2, size_t n) | |
{ | |
const unsigned char *p1 = ptr1; | |
const unsigned char *p2 = ptr2; | |
while (n-- > 0) { | |
if (*p1 != *p2) { | |
return *p1 - *p2; | |
} | |
p1 += 1; | |
p2 += 1; | |
} | |
return 0; | |
} | |
void *memset(void *dest, int c, size_t size) | |
{ | |
unsigned char *d = (unsigned char *)dest; | |
while (size-- > 0) { | |
*d++ = (unsigned char)c; | |
} | |
return dest; | |
} |