#include void *memset(void *ptr, int value, size_t num) { unsigned char *byte_ptr = ptr; for (size_t i = 0; i < num; i++) { byte_ptr[i] = (unsigned char)value; } return ptr; }