资源简介
zw_selectChat.zip
代码片段和文件信息
///客户端
#include
#include
#include
using namespace std;
#pragma comment(lib“ws2_32.lib“)
DWORD WINAPI Recv( LPVOID lpParameter);
bool socketSelect(SOCKET socketint Timeoutbool Read);
char recvBuf[100]=“0“;//accept the information
char getInput[100]=“0“;//store the input
SOCKET soc=NULL;
SOCKADDR_IN sockSrv;
int main()
{
HANDLE hThread;
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested=MAKEWORD(11);
err=WSAStartup(wVersionRequested&wsaData);
if(err!=0)
{
return 0;
}
if(LOBYTE(wsaData.wVersion)!=1 || HIBYTE(wsaData.wVersion)!=1 )
{
WSACleanup();
return 0;
}
soc=socket(AF_INETSOCK_STREAMIPPROTO_TCP);
sockSrv.sin_addr.S_un.S_addr=inet_addr(“211.80.203.73“);
sockSrv.sin_family=AF_INET;
sockSrv.sin_port=htons(6000);
int con=connect(soc(sockaddr*)&sockSrvsizeof(SOCKADDR));//connect to the server avaliable
if(con==SOCKET_ERROR)
{
cout<<“connect error!“< return 0;
}
//the second stage
hThread=CreateThread(NULL0RecvNULL0NULL);
while(getInput!=“q“)
{
cout<<“please input your words:“< cin>>getInput;
if(socketSelect(soc1000false)&&getInput!=NULL)
{
send(socgetInputstrlen(getInput)+10);
}
}
closesocket(soc);//close immediately
WSACleanup();
return 0;
}
DWORD WINAPI Recv( LPVOID lpParameter)
{
while(1)
{
//recv(socrecvBuf1000);
//cout< //memset(recvBuf0sizeof(recvBuf));
if(socketSelect(soc1000true))
{
int i=recv(socrecvBuf1000);
if(i>0)
{
cout< memset(recvBuf0sizeof(recvBuf));
}
else
{
cout<<“the server has been shut down! please log in again!“< break;
}
}
}
return 0;
}
bool socketSelect(SOCKET socketint nTimeoutbool bRead)
{
fd_set fdset;
timeval tv;
FD_ZERO(&fdset);
FD_SET(soc&fdset);
nTimeout=(nTimeout>1000?1000:nTimeout);
tv.tv_sec=0;
tv.tv_usec=nTimeout;
int iRet=0;
if(bRead)
{
iRet=select(0&fdsetNULLNULL&tv);
}
else
{
iRet=select(0NULL&fdsetNULL&tv);
}
if(iRet <= 0) {
return FALSE;
} else if (FD_ISSET(soc &fdset)){
return TRUE;
}
return false;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2387 2019-01-05 23:51 \selectChat.cpp
文件 36 2019-01-05 23:51 \no.txt
相关资源
- zw_OBD故障码.zip
- zw_fuzzy_pid.zip
- zw_C全方位学习》范磊高清pdf书源代码
- zw_STM32F1012864液晶字库.zip
- NiuShop_B2B2C_V1.0.rar
- NoFuserEx.v.1.2-dotNet.v4.6.1.rar
- 传奇H5服务端视频教程后台GM工具.tx
- macosAMD.txt
- macos10.14.txt
- macos10.13.txt
- 破解RS5000保护文件sk.docx
- 时间序列回归(1).pdf
- 123.txt
- 3.txt
- 六、最新尚硅谷MongoDB视频链接.rar
- 设备资产运维管理系统PMS2.0与调度管
- 小象学习机器学习视频不知道哪期.
- 博途V14教学视频.txt
- T先生密码(5).txt
- 一键解析各大视频网站VIP视频源码.
- PhotoScan.xp510.com.rar
- 优酷路由宝L1刷Breed和第三方固件多拨
- gua_zi_er_shou_che.zip
- 安全运维面试题.docx
- halcon10.zip
- 全国高校坐标百度地图经纬度.txt
- 小甲鱼全系列视频和源码和课件.txt
- kafka视频.docx
- 2019网络空间安全国赛8080缓冲区溢出漏
- 英特尔(R)显示器音频_10.23.0.567_9-
评论
共有 条评论