小编Ngọ*_* Đỗ的帖子

memcpy发生错误

我试图使用memcpy()函数,但发生错误:

typedef struct
    {
        int a;
        int b;
    }A;

void Test(void **obj)
{
    A *object=(A*)malloc(sizeof(A));

    memcpy(object,*obj,sizeof(A));//program crash here
    printf("a=%d\n",object->a);
    printf("b=%d\n",object->b);
    free(*obj);
    *obj=NULL;

}
void main()
{
    A *obj=(A*)malloc(sizeof(A));
    obj->a=1;
    obj->b=2;
    Test((void**)obj);

}
Run Code Online (Sandbox Code Playgroud)

通知显示:"访问冲突读取位置0x00000001" 当我传递参数是void*obj.没有任何问题任何人都可以帮助我吗?谢谢

c

3
推荐指数
1
解决办法
912
查看次数

标签 统计

c ×1