程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 網絡程序設計--UDP通信(服務器)

網絡程序設計--UDP通信(服務器)

編輯:C++入門知識

[cpp]  //////////////////////////////////////////////////////////   // UDPServer.cpp文件         #include "../common/InitSock.h"   #include <stdio.h>   CInitSock initSock;     // 初始化Winsock庫      int main()   {       // 創建套節字       SOCKET s = ::socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);       if(s == INVALID_SOCKET)       {           printf("Failed socket() \n");           return 0;       }              // 填充sockaddr_in結構       sockaddr_in sin;       sin.sin_family = AF_INET;       sin.sin_port = htons(4567);       sin.sin_addr.S_un.S_addr = INADDR_ANY;              // 綁定這個套節字到一個本地地址       if(::bind(s, (LPSOCKADDR)&sin, sizeof(sin)) == SOCKET_ERROR)       {           printf("Failed bind() \n");           return 0;       }          // 接收數據       char buff[1024];       sockaddr_in addr;       int nLen = sizeof(addr);       while(TRUE)       {           int nRecv = ::recvfrom(s, buff, 1024, 0, (sockaddr*)&addr, &nLen);            if(nRecv > 0)           {               buff[nRecv] = '\0';               printf(" 接收到數據(%s):%s", ::inet_ntoa(addr.sin_addr), buff);           }       }       ::closesocket(s);   }      

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved