本文原创,如有转发,请注明原文链接地址,谢谢合作。 发表日期 : 2010-11-28 21:16:16 本代码用VS2008编写: #include <winsock2.h> #include <stdio.h> #pragma comment(lib,"ws2_32.lib") void main() { WSADATA wsaData; SOCKET s; SOCKADDR_IN ServerAddr; int Port = 8060; int Ret; //初始化winsock 2.2版本 if((Ret = WSAStartup(MAKEWORD(2,2),&wsaData)) !=0) { printf("Error:WSAStartup failed with %d/n",Ret); } //创建一个新的套接字来建立客户机连接 if((s = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP)) == INVALID_SOCKET) { printf("ERROR:socket failed with %d/n",WSAGetLastError()); WSACleanup(); return; } //建立一个SOCKADDR_IN结构,用来连接到8060端口的监听服务器 ServerAddr.sin_family = AF_INET; ServerAddr.sin_port = htons(Port); ServerAddr.sin_addr.s_addr = inet_addr("127.0.0.1"); //用套接字s创建一个到服务器的连接 if(SOCKET_ERROR == connect(s,(SOCKADDR *)&ServerAddr,sizeof(ServerAddr))) { printf("connect failed with %d/n",WSAGetLastError()); closesocket(s); WSACleanup(); return; } printf("connect succeed!/n"); //发送数据 if(SOCKET_ERROR == send(s,"hello",5,0)) { printf("send failed with %d/n",WSAGetLastError()); closesocket(s); WSACleanup(); return; } printf("send succeed!/n"); //关闭套接字 closesocket(s); //应用程序完成对连接的处理后,调用WSACleanup WSACleanup(); }