define WIN32_LEAN_AND_MEAN
include<windows.h>
include<winsock2.h>
pragma comment(lib,"ws2_32.lib")
include<stdio.h>
int main(){
WORD ver=MAKEWORD(2,2);
WSADATA data;
WSAStartup(ver,data);
SOCKET _sock = socke(AF_INET,SOCKET_STREAM,IPPROTO_TCP);
绑定端口
sockaddr_in _sin={};
_sin.sin_family=AF_INET;
_sin.sin_port=hoton(4567);
_sin.sin_addr.Sun.s_addr=inet_addr("IP");
if (SOCKET_ERROR == bind(_sock,(socketaddr *) &sin,sizeof(_sin)));{}
listen(_sock,5);
//接受等待client的连接
sockaddr_in clientAddr={};
int nAddrLen = sizeof(sockaddr_in);
SOCKET _cSocket = INVALID_SOCKET;
char msgBuf[]="Hello";
_cSocket = accept(_sock,(socketAddr *)&clientAddr,&nAddrLen);
printf(inet_ntoa(clientAddr,sin_addr));
发送data
send(_cSocket,msgBuf,strlen(msgBuf)+1,0);
closesocket(_sock);
WSACleanup();
}
int main()
{
WORD ver=MAKEWORD(2,2);
WSADATA data;
WSAStartup(ver,&data);
//建立socket
SOCKET _sock = socket(AF_INET,SOCK_STREAM,0);
连接
sockaddr_in _sin={};
_sin.sin_family=AF_INET;
_sin.sin_port=htons(4567);
_sin.sin_addr.Sun.S_addr=inet_addr("IP");
connect(_sock,(sockaddr*)&sin,sizeof(sockaddr_in));
接受data
char recvBuf[256]={};
int nlen = recv(_sock,recvBuf,256,0);
printf(recvBuf);
关闭socket
closesocket(_sock);
WSACleanup();
getchar();
return 0;
}
}
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。