UDP 通信

#include  < Winsock2.h >
#include 
< stdio.h >
#pragma comment(lib,
" ws2_32.lib " )

void  main() 

    WORD wVersionRequested; 
    WSADATA wsaData; 
    
int err; 

    wVersionRequested
=MAKEWORD(1,1); 

    err 
= WSAStartup(wVersionRequested, &wsaData); 
    
if (err != 0
    


        
return
    }
 

    
if (LOBYTE(wsaData.wVersion)!=1 || 
        HIBYTE(wsaData.wVersion)
!=1
    

        WSACleanup(); 
        
return
    }
 

    SOCKET sockSrv
=socket(AF_INET,SOCK_DGRAM,0);
    SOCKADDR_IN addrSrv;
    addrSrv.sin_addr.S_un.S_addr
=htonl(INADDR_ANY);
    addrSrv.sin_family
=AF_INET;
    addrSrv.sin_port
=htons(6000);

    bind(sockSrv,(SOCKADDR
*)&addrSrv,sizeof(SOCKADDR));

    SOCKADDR_IN addrClient;
    
int len=sizeof(SOCKADDR);
    
char recvBuf[100];

    recvfrom(sockSrv,recvBuf,
100,0,(SOCKADDR*)&addrClient,&len);
    printf(
"%s\n",recvBuf);
    closesocket(sockSrv);
    WSACleanup();
}


#include  < Winsock2.h >
#include 
< stdio.h >
#pragma comment(lib,
" ws2_32.lib " )

void  main() 

    WORD wVersionRequested; 
    WSADATA wsaData; 
    
int err; 

    wVersionRequested
=MAKEWORD(1,1); 

    err 
= WSAStartup(wVersionRequested, &wsaData); 
    
if (err != 0
    


        
return
    }
 

    
if (LOBYTE(wsaData.wVersion)!=1 || 
        HIBYTE(wsaData.wVersion)
!=1
    

        WSACleanup(); 
        
return
    }

    SOCKET sockClient
=socket(AF_INET,SOCK_DGRAM,0);
    SOCKADDR_IN addrSrv;
    addrSrv.sin_addr.S_un.S_addr
=inet_addr("127.0.0.1");
    addrSrv.sin_family
=AF_INET;
    addrSrv.sin_port
=htons(6000);

    sendto(sockClient,
"Hello",strlen("Hello")+1,0,
        (SOCKADDR
*)&addrSrv,sizeof(SOCKADDR));
    closesocket(sockClient);
    WSACleanup();
}

你可能感兴趣的:(socket)