C++控制台中,用SOCKET传输结构体(包含CString),接收端想显示时程序会中断,好像是内存泄漏
structdatatrans{intx;floaty;CStringz;};发送端:datatranstrans;cin>>trans.x;cin>>trans.y;s...
struct datatrans
{
int x;
float y;
CString z;
};
发送端:
datatrans trans;
cin>>trans.x;
cin>>trans.y;
string a;
cin.ignore();
getline(cin,a);
trans.z.Format("%s",a.c_str());
cout<<trans.z ;
send(sockConnect,( char*)&trans,10,0);
接收端:
datatrans trans;
recv(sockClient,RecvBuf,100,0);
memcpy(&trans,RecvBuf,sizeof(RecvBuf));
cout<<trans.x<<endl<<trans.y;
cout<<trans.z;
显示X和Y没问题,只要显示Z就会程序中断,怎么解决 展开
{
int x;
float y;
CString z;
};
发送端:
datatrans trans;
cin>>trans.x;
cin>>trans.y;
string a;
cin.ignore();
getline(cin,a);
trans.z.Format("%s",a.c_str());
cout<<trans.z ;
send(sockConnect,( char*)&trans,10,0);
接收端:
datatrans trans;
recv(sockClient,RecvBuf,100,0);
memcpy(&trans,RecvBuf,sizeof(RecvBuf));
cout<<trans.x<<endl<<trans.y;
cout<<trans.z;
显示X和Y没问题,只要显示Z就会程序中断,怎么解决 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询