資源簡介
包括TCP服務器客戶端多線程通信程序(用select實現),基于Visual Studio2017實現,已編譯測試過,用到的朋友記得關閉SDL檢查
代碼片段和文件信息
#include?“winsock2.h“
#include?“stdio.h“
#include?“time.h“
#include?
#include?
#include?“stdafx.h“
#define?MAX_BUFFER?1024
#define?SERVER_PORT?5060
using?namespace?std;
int?main(int?argc?char*?argv[])
{
SOCKET?connectionFd;
int?in;
struct?sockaddr_in?servaddr;
char?addr[]?=?“127.0.0.1“;
char?recvbuffer[MAX_BUFFER?+?1];
WSADATA?wsaData;
if?(WSAStartup(MAKEWORD(2?2)?&wsaData)?!=?0)?{
printf(“Winsock?error\n“);
return?-1;
}
connectionFd?=?socket(AF_INET?SOCK_STREAM?0);
if?(connectionFd?==?-1)?{
printf(“socket?error!\n“);
WSACleanup();
return?-1;
}
memset(&servaddr?0?sizeof(servaddr));
servaddr.sin_family?=?AF_INET;
servaddr.sin_port?=?htons(SERVER_PORT);
inet_pton(AF_INET?addr?&servaddr.sin_addr);
//connect
if?(connect(connectionFd?(struct?sockaddr?*)&servaddr?sizeof(servaddr))?==?INVALID_SOCKET)?{
printf(“connect()?Failed:%d\n“?WSAGetLastError());
closesocket(connectionFd);
WSACleanup();
return?-1;
}
cout?<“connect?with?server!“?< send(connectionFd?“HELLO\n“?strlen(“HELLO\n“)?0);
cout?<“send?success!“?< if?((in?=?recv(connectionFd?recvbuffer?MAX_BUFFER?0))?>?0)?{
recvbuffer[in]?=?0;
cout?<“recv?from?server:“?< }
closesocket(connectionFd);
WSACleanup();
system(“pause“);
return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
????..A..H.?????48640??2019-04-17?17:17??multithreadTCP\.vs\multithreadTCP\v15\.suo
?????文件???36917248??2019-04-17?16:36??multithreadTCP\.vs\multithreadTCP\v15\Browse.VC.db
?????文件???43712512??2019-04-17?16:32??multithreadTCP\.vs\multithreadTCP\v15\ipch\AutoPCH\65907c56edb12ad0\TCPSERVER.ipch
?????文件???68747264??2019-04-16?15:53??multithreadTCP\.vs\multithreadTCP\v15\ipch\AutoPCH\70a0c21544176370\TCPCLIENT.ipch
?????文件???????4096??2019-04-16?15:53??multithreadTCP\.vs\multithreadTCP\v15\Solution.VC.db
?????文件??????32768??2019-04-16?15:53??multithreadTCP\.vs\multithreadTCP\v15\Solution.VC.db-shm
?????文件????3411392??2019-04-16?15:53??multithreadTCP\.vs\multithreadTCP\v15\Solution.VC.db-wal
?????文件??????48640??2019-04-17?15:09??multithreadTCP\Debug\TCPClient.exe
?????文件?????425636??2019-04-17?15:09??multithreadTCP\Debug\TCPClient.ilk
?????文件?????667648??2019-04-17?15:09??multithreadTCP\Debug\TCPClient.pdb
?????文件??????39936??2019-04-17?15:09??multithreadTCP\Debug\TCPServer.exe
?????文件?????358992??2019-04-17?15:09??multithreadTCP\Debug\TCPServer.ilk
?????文件?????585728??2019-04-17?15:09??multithreadTCP\Debug\TCPServer.pdb
?????文件???????2199??2019-04-16?11:43??multithreadTCP\multithreadTCP.sln
?????文件???????1128??2019-04-16?11:45??multithreadTCP\TCPClient\Debug\TCPClient.Build.CppClean.log
?????文件????????121??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.log
?????文件??????69682??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.obj
?????文件????????754??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\CL.command.1.tlog
?????文件??????38982??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\CL.read.1.tlog
?????文件????????680??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\CL.write.1.tlog
?????文件???????1330??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\li
?????文件???????3580??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\li
?????文件????????648??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\li
?????文件????????232??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\TCPClient.tlog\TCPClient.lastbuildstate
?????文件?????363520??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\vc141.idb
?????文件?????430080??2019-04-17?15:09??multithreadTCP\TCPClient\Debug\vc141.pdb
?????文件?????????92??2019-04-11?15:46??multithreadTCP\TCPClient\stdafx.h
?????文件???????1396??2019-04-17?15:33??multithreadTCP\TCPClient\TCPClient.cpp
?????文件???????6021??2019-04-16?11:43??multithreadTCP\TCPClient\TCPClient.vcxproj
?????文件???????1073??2019-04-16?11:43??multithreadTCP\TCPClient\TCPClient.vcxproj.filters
............此處省略36個文件信息
評論
共有 條評論