您的位置:首页 > 理论基础 > 计算机网络

Winock2网络编程服务器端

2016-05-05 12:44 495 查看
// SockServies.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

#include <stdio.h>
#include <WINSOCK2.H>

int main(int argc, char* argv[])
{
//初始化Winsock DLL,确定调用的Winsock的版本,并为此分配必要的资源
WSADATA tVerData = { 0 };
WSAStartup( MAKEWORD(2,0) , &tVerData);

//创建监听套接字
SOCKET SockListen = socket( AF_INET , SOCK_STREAM ,0); //网络地址类型 ,套接字类型(流式套接字,数据包套接字),指定的网络协议

//绑定监听套接字 将本地地址附加到所创建的嵌套字上以编能够有效标识套接字
SOCKADDR_IN SvrAddr = { 0 };
SvrAddr.sin_family = AF_INET;
SvrAddr.sin_port = htons(5050);
SvrAddr.sin_addr.s_addr = inet_addr("192.168.1.111");

bind(SockListen,(sockaddr*)&SvrAddr,sizeof(sockaddr));

listen(SockListen,3); //SockListen是一个已绑定但尚未连接的套接字描述字,3用来指定正在等待连接的的队列长度,表示可以存储同时申请连接的5个连接请求

SOCKET Client = accept(SockListen,NULL,NULL); //返回通信套接字

char szBuf[255] = "";
recv(Client,szBuf,255,0);
printf("Client: %s\n",szBuf);

scanf("%s" , szBuf);
send(Client,szBuf,strlen(szBuf) +1, 0 );

closesocket(Client);
closesocket(SockListen);

//终止对Winsock DLL 的使用,释放资源
WSACleanup();

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: