服务端代码:
void CListenSocket::OnAccept(int nErrorCode)
{
// TODO: 在此添加专用代码和/或调用基类
// 接受客户端的连接请求
Accept(m_ServerSocket);//接受连接请求
m_ServerSocket.AsyncSelect(FD_READ|FD_CLOSE);
CAsyncSocket::OnAccept(nErrorCode);
CBusinessDM BusiDM;
BusiDM.QueryEmployeeeInfo();
m_ServerSocket.Send(BusiDM.m_EmpList,sizeof(BusiDM.m_EmpList.));
}
客户端代码
void CClientSocket::OnReceive(int nErrorCode)
{
// TODO: 在此添加专用代码和/或调用基类
char szTemp[1024];
int n=Receive(szTemp,1024);//接收信息
EmployeeList *Emplist =(EmployeeList *)szTemp;
}
Emplist的值不对,求大神指导下,该怎么解决,代码应该怎么写?
List定义:
typedef vectorEmployeeList;//Employee是个结构体
MFC的Send函数怎么发送一个List
答案:3 悬赏:70 手机版
解决时间 2021-01-02 22:35
- 提问者网友:沉默的哀伤
- 2021-01-02 19:24
最佳答案
- 五星知识达人网友:污到你湿
- 2021-01-02 19:44
这个应该和list无关,而是和结构体Employee有关。
你在send的时候,应该发送的不是list,而是其中取出的一个结构体吧。
这样只要结构体内没有指针(都是固定长度),那么send结构体Employee,接收端接收按照结构体长度接收,再重建list即可。
全部回答
- 1楼网友:躲不过心动
- 2021-01-02 21:09
两个机器内存地址不一样, 发送数据, 在对方重建list
- 2楼网友:由着我着迷
- 2021-01-02 20:25
如果是tcp,先连接到对方,send就不需要地址了。
如果是是udp,有地址参数。用sendto。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
正方形一边上任一点到这个正方形两条对角线的 |
阴历怎么看 ? |