我想通过套接字在结构中发送一个 void *。我的结构:
struct A
{
int i;
void * vptr;
};
客户端
struct A a;
struct B b;
// filling structure B
.....
// filling structure A
a.i = 1;
a.vptr = &b
write(servsocket,(char*)&a,sizeof(struct A));
但是在服务器端,当我读取结构并将 void * 类型转换为另一个结构分段错误时。
服务器端
struct A *a;
stuct B *b;
char recvBuff[1024];
read(sock,recvBuff,sizeof(recvBuff));
a= (A*)recvBuff;
printf("%d",a->i); // printing value 1
b = (B*)a->vptr; // segmentation fault