编程完整实现任意类型的数据拷贝;亮点是char的强制类型转换。
此处以结构体类型为例;
`struct s {
char name[20];
int age;
};
void my_memcpy(void dest, void src, size_t num)
{
void ret = dest;
assert(dest && src);
while (num--)
{
(char)dest = (char)src;
dest = (char)dest + 1;
src = (char*)src + 1;
}
return ret;
}
int main()
{
struct s arr1[] = { {"你",5},{"他",6} };
struct s arr2[3] = { 0 };
my_memcpy(arr2, arr1, sizeof(arr1));
}`
模拟实现函数 memcpy
原文:https://blog.51cto.com/14736509/2489253