C语言结构体拷贝

定义了一个结构体数组,每个成员都想从另一个相同的结构体中拷贝过来,遂用了memcpy,比如

typedef struct cata *CATA, single_cata;

int size=​sizeof(single_cata);

memcpy(CATA+i*size,&single_cata,size);​

运行时发现除了结构体数组CATA的第一个值是正确的,后面的全错了,后来搜了一下,发现要如是改:

​memcpy((char*)CATA+i*size,&single_cata,size);​

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注