int WSAAPI connect(
SOCKET s,const sockaddr *name,int namelen
);
4. 客户端示例代码
#ifndef UNICODE#define UNICODE#endif#define WIN32_LEAN_AND_MEAN#include<winsock2.h>#include<ws2tcpip.h>#include<stdio.h>// Need to link with Ws2_32.lib#pragma comment(lib, "ws2_32.lib")intwmain(){//----------------------// Initialize Winsock
WSADATA wsaData;int iResult =WSAStartup(MAKEWORD(2,2),&wsaData);if(iResult != NO_ERROR){wprintf(L"WSAStartup function failed with error: %d\n", iResult);return1;}//----------------------// Create a SOCKET for connecting to server
SOCKET ConnectSocket;
ConnectSocket =socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if(ConnectSocket == INVALID_SOCKET){wprintf(L"socket function failed with error: %ld\n",WSAGetLastError());WSACleanup();return1;}//----------------------// The sockaddr_in structure specifies the address family,// IP address, and port of the server to be connected to.
sockaddr_in clientService;
clientService.sin_family = AF_INET;
clientService.sin_addr.s_addr =inet_addr("127.0.0.1");
clientService.sin_port =htons(27015);//----------------------// Connect to server.
iResult =connect(ConnectSocket,(SOCKADDR *)& clientService,sizeof(clientService));if(iResult == SOCKET_ERROR){wprintf(L"connect function failed with error: %ld\n",WSAGetLastError());
iResult =closesocket(ConnectSocket);if(iResult == SOCKET_ERROR)wprintf(L"closesocket function failed with error: %ld\n",WSAGetLastError());WSACleanup();return1;}wprintf(L"Connected to server.\n");
iResult =closesocket(ConnectSocket);if(iResult == SOCKET_ERROR){wprintf(L"closesocket function failed with error: %ld\n",WSAGetLastError());WSACleanup();return1;}WSACleanup();return0;}