问题遇到的现象和发生背景
++需要左值
问题相关代码,请勿粘贴截图
void* my_memcpy(void* dest,const void* src,size_t num)
{
void* ret = dest;
assert(dest!=NULL);
assert(num!=NULL);
while (num--)
{
*(char*)dest = *(char*)src;
++(char*)dest;
++(char*)src;
}
return ret;
}
struct s
{
char name[20];
int age;
};
int main()
{
struct s a3[20]= { {"张三", 20},{"李四",21} };
struct s a4[10]= {"0"};
my_memcpy(a1, a2, sizeof(a3));
printf("%s", a4->name);
return 0;
}
运行结果及报错内容
我的解答思路和尝试过的方法
我创建了两个新的字符数组把void指针的值放在里面用来++,但输出的结果是 ?