#include extern "C" { void* memcpy(void* dest, const void* src, size_t n) { for (size_t i = 0; i < n; ++i) { *((char*)dest + i) = *((char*)src + i); } return dest; } void* memset(void* dest, int c, size_t n) { for (size_t i = 0; i < n; ++i) { *((char*)dest + i) = (char)c; } return dest; } size_t strlen(const char* s) { const char* i = s; for (; *i; ++i) ; return (i - s); } char* strcpy(char* dest, const char* src) { memcpy(dest, src, strlen(src) + 1); return dest; } char* strcat(char* dest, const char* src) { size_t dest_len = strlen(dest); size_t i; for (i = 0; *(src + i); i++) *(char*)(dest + dest_len + i) = *(char*)(src + i); *(char*)(dest + dest_len + i) = '\0'; return dest; } char* strchr(const char*, int) { return 0; } }