server.cpp

#include<WinScok.h>
#include<windows.h>
#include<stdio.h>
int main()
{
    WORD ver = MAKEWORD(2,2);
    WSDATA dat;
    WSAStartup(ver. &dat);
    
    
    
    SOCKET _sock = socket (AF_INET.SOCK_STREAM,IPPROTO_TPC);
    sockaddr_in _sin = {};
    _sin.sin_family = AF_INET;
    _sin,sin_port = htons(4567);
    _sin.sin_addr.S_un.S_addr = inet_addr(:12.0.0.1");
    if(bind(_sock,(sockaddr*) &_sin,sizeof(_sin)) == SOCKET_ERROR)
    {
        printf"绑定用于接受客户端的连接端口失败");
        
    }
    else{
        printf("绑定端口成功\n");
    }
    if(listen(_sock,5) == SOCKET_ERROR)
    {
        printf("监听端口失败..\n");
    }
    sockaddr_in clientAddr= {};
    int nAddrLen = sizeof(sockaddr_in);
    SOCKET_cSOCK = INVALID_SOCKET;
    
    _cSOCK = accept(_sock,(sockaddr*)&clientAddr,&nAddrLen);
    if(_cSock == INVALID_SOCKET)
    {
        printf("错误,接收到无效的哭护短SOXKET..\n");
    }
    printf("新客户端加入:socket = %d ,IP = %s \n",_cSock,inet_ntoa(clientAddr.sin_addr));
    
    char _recvBuf[128] = {};
    while(true)
    {
        int nLen = recv(_cSOCK,_recvBuf,128,0);
        if(nLen <= 0)
        {
            printf("客户端已退出,任务结束");
            break;
        }
        printf("收到命令:%s \n",_recvBuf);
        if(strcmp(_recvBuf,"getName") == 0)
        {
            char amgBuf[] = "klose";
            send(_cSOCK,magBuf,strlen(msgBuf)+1,0);
            
        }
        else
        {
            char msgBuf[] = "???";
            send(_cSock,msgBuf,strlen(msgBuf)+1,0);
            
        }
        closesocket(_sock)l
        
        WSACleanup();
        getchar();
        return 0;     
        
    }
    
    
    
    
    
    
    
}

client.cpp

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
#include<WinSock2.h>
#include<windows.h>
#include<stdio.h>

int main()
{
    WORD ver = MAKEWORD(2,2);
    WSADATA dat;
    WSAStartup(ver,&dat);
    
    SOCKET _sock = socket(AF_INET,SOCK_STREAM,0)
    if(_socl == INVALID_SOCKET)
    {
        printf("错误,建立Socket失败...\n");
        
    }
    else
    {
        printf("建立Socket成功...\n");   
    }
    socketaddr_in _sin = {};
    _sin.sin_family = AF_INET;
    _sin.sin_port = htons(4567);
    _sin.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
    
    int ret = connest(_sock,(sockaddr *)&_sin,sizeof(socketaddr));
    {
        printf("错误,连接服务器失败...\n")l
        
    }
    else
    {
        printf("连接服务器成功...\n");
        
    }
    char cmdBuf[128] = {};
    while(true)
    {
        scanf("%s",cmdBuf)'
        if (strcmp(cmdBuf,"exit) == 0)
        {
            break;
        }
        else
        {
            send(_sock,cmdBuf,strlen(cmdBuf)+1 ,0);
        }
        
        char recvBuf[256] = {};
        int nlen = recv (_sock,recvBuf,156,0);
        if(nlen > 0)
        {
            printf("接受数据:%s \n",recvBuf)'
        }
    }
    closesocket(_sock);
    WSACleanup();
    getchar();
    return 0;
    
}
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄