折腾了1个多星期终于搞出来了,主要是新手小白,折腾在控件,类型转换了,以下为折腾的主要代码:
1.服务端
BOOL Cqq3Dlg::OnInitDialog()
{
// TODO: Add extra initialization here
AfxBeginThread(ThreadForAcceptMsg, this);//专门接收
AfxBeginThread(ThreadForSendMsg, this);//专门发送
}
if (FD_ISSET(sockfd, &readfs))
{
省略n行。。。。。。
memset(buf, 0, sizeof(buf));
int ret = recv(socketfd[i], buf, sizeof(buf), 0);//新用户登陆
p = (Msg*)buf; //将客服端登陆的名字密码强制转换为结构体
strcpy_s(sname[i].name,p->name);
sname[i].nfd= 2;
sysdate += _T(“用户登陆\n用户名:\t”) + CString(p->name);
sysdate += _T(“\n密 码:\t”) + CString(p->password);
pDlg->GetDlgItem(IDC_sysmsg)->SetWindowTextW(sysdate);
memset(buf, 0, sizeof(buf));
memcpy(buf, sname,sizeof(user)*30);//将登陆的名字结构体强制转换为数组
for (int j = 0; j < 30; j++)//发送所有用户名到客服端
{
if (socketfd[j] != -1)
send(socketfd[j], buf, sizeof(buf), 0);
}
memset(buf, 0, sizeof(buf));
memset(pt, 0, sizeof(recMSG)
MFC 结构体数组转换数组用法
最新推荐文章于 2021-08-16 19:26:53 发布