#define WIN32_LEAN_AND_MEAN //区别winSock1与WinSock2 区别开包含WinSock2 编译可通过
#define _WINSOCK_DEPRECATED_NO_WARNINGS
#include<Windows.h>
#include<WinSock2.h>
#include<stdio.h>
#pragma comment(lib,"ws2_32.lib") //WSAStartup 是动态库接口使用要加载,在window中这么做,在其他平台是不需要
int main()
{
//Init socket 在window中必须这么做
WORD versionRequest = MAKEWORD(2,2);//版本
//MAKEWORD(1,1)和MAKEWORD(2,2)的区别在于,前者只能一次接收一次,不能马上发送,而后者能
WSADATA WSAdata;
WSAStartup(versionRequest, &WSAdata);//初始化sock
//建立TCP服务器端
//创建套接字
SOCKET sock=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); //AF_INET--ipv4 SOCK_STREAM 流方式 TCP链接
//bind 用于客户端连接的端口
sockaddr_in _sin = {};
_sin.sin_family = AF_INET;
_sin.sin_port = htons(4567);//host to net short 转化网络字节序
_sin.sin_addr.S_un.S_addr = INADDR_ANY;//inet_addr("127.0.0.1");//将一个点分十进制的IP转换成一个长整数型数(u_long类型)等同于inet_addr()
//INADDR_AN
EasyTcpServer建立
最新推荐文章于 2024-05-05 19:45:45 发布
本文详细介绍了如何从零开始构建一个EasyTcpServer,涵盖了Socket编程的基础知识,包括服务器端的初始化、连接处理、数据收发等关键步骤,帮助读者理解TCP服务端的实现过程。
摘要由CSDN通过智能技术生成