我正在尝试创建我自己的 C 函数版本,当我到达时,memcpy我memset认为我应该将目标和源指针转换为char *. 然而,我见过很多指针被转换到的例子unsigned char *。这是为什么?
void *mem_cpy(void *dest, const void *src, size_t n) {
if (dest == NULL || src == NULL)
return NULL;
int i = 0;
char *dest_arr = (char *)dest;
char *src_arr = (char *)src;
while (i < n) {
dest_arr[i] = src_arr[i];
i++;
}
return dest;
}
Run Code Online (Sandbox Code Playgroud)