udp编程Java语言应用中实现UDP协议编程的方法?

udp编程  时间:2021-08-30  阅读:()

CSocket之UDP编程

#include <stdio.h> #include <Winsock2.h> #ment(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 sersocket=socket(AF_INET,SOCK_DGRAM,0); SOCKADDR_IN seraddr; seraddr.sin_addr.S_un.S_addr=htonl(INADDR_ANY); seraddr.sin_family=AF_INET; seraddr.sin_port=htons(5000); bind(sersocket,(SOCKADDR*)&seraddr,sizeof(SOCKADDR)); SOCKADDR clientaddr; int len=sizeof(SOCKADDR); char revbuf[100]; char sendbuf[100]; recvfrom(sersocket,revbuf,100,0,(SOCKADDR*)&clientaddr,&len); printf("%s ",revbuf); scanf("%s",&sendbuf); sendto(sersocket,sendbuf,strlen(sendbuf)+1,0,(SOCKADDR*)&clientaddr,len); closesocket(sersocket); WSACleanup(); } #include <stdio.h> #include <Winsock2.h> #ment(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 clientaddr; clientaddr.sin_addr.S_un.S_addr=_addr("127.0.0.1"); clientaddr.sin_family=AF_INET; clientaddr.sin_port=htons(5000); int len=sizeof(SOCKADDR); char revbuf[100]; char sendbuf[100]; printf("请输入内容: "); while(1) { scanf("%s",&sendbuf); sendto(sockclient,sendbuf,strlen(sendbuf)+1,0,(SOCKADDR*)&clientaddr,len); recvfrom(sockclient,revbuf,100,0,(SOCKADDR*)&clientaddr,&len); printf("%s ",revbuf); } closesocket(sockclient); WSACleanup(); } 大同小异,CSocket只是进行了封装而已,原理是一样的,编程要思路灵活才行。

在MFC中的UDP程序怎么编写用CAsyncSocket或者CSocket?

呵呵整一个SOCKET盲 还一上来就要用封装好的MFC类,哀分少啊,帮你说说吧 建立一个新类从CAsyncSocket public 派生来,叫 MySock,然后在CXXXDlg的头文件加个变量 MySock m_socket; 然后 CXXXDlg中的INITDIALOG初始化, m_socket.Create(0,SOCK_DGRAM); 使用UDP恩首先你要考虑到服务器端也是使用UDP的协议的,然后就可以调用 m_socket.SendTo(buffer,strlen(buffer),3333,"xxx.xxx.xxx.xxx"); 3333是服务器等待接收数据的端口,XXX.XXX.XXX.XXX 是服务器的IP,恩域名也可以...如果服务器是TCP的话要用Connect连接然后用Send方法发送数据,使用完调用close关闭SOCKET,也疴可以不关,类销毁时会自动释放所使用资源,恩至于要等待接收数据,UDP需要BIND,可以在CREATE的时候就绑定上,而TCP不光要绑定上还要listen监听,TCP有连接来后要用ept接收连接,给它一个新的 CAsyncSocket,呵呵就说这么点,对了在BOOL CXXXApp::InitInstance()的初始化函数中添加 if (!AfxSocketInit()) { AfxMessageBox(IDP_SOCKETS_INIT_FAILED); return FALSE; } 还有头文件 #include <afxsock.h> // MFC socket extensions .或者你在创建工程时选择上WINSOCKET, 恩对了CSocket是堵塞的套接字,需要同步很强的工作再选择他,一般使用异步的,给分!

TCP 和 UDP 在socket编程中的区别

一、TCP与UDP的区别 基于连接与无连接   对系统资源的要求(TCP较多,UDP少)   UDP程序结构较简单   流模式与数据报模式   TCP保证数据正确性,UDP可能丢包   TCP保证数据顺序,UDP不保证   部分满足以下几点要求时,应该采用UDP 面向数据报方式 网络数据大多为短消息   拥有大量Client   对数据安全性无特殊要求   网络负担非常重,但对响应速度要求高   具体编程时的区别 socket()的参数不同   UDP Server不需要调用listen和ept   UDP收发数据用sendto/recvfrom函数   TCP:地址信息在connect/ept时确定   UDP:在sendto/recvfrom函数中每次均 需指定地址信息   UDP:shutdown函数无效

急求C语言编写的基于UDP的点对点的聊天程序代码

UDP啊。

。

服务器: socket(AF_INET, SOCK_DATEGRAM,0); 初始化地址。

bind一下。

然 recv或者 sendto。

客户端: 一样。

socket因为UPD。

直接conect一样。

sendto就行了。

注意 :1.聊天 需要 IO多路复用。

select 或者 poll。

可以实现 2. 群聊。

。

其实就是一个 发送给多个。

。

把IP往出口 轮询就行。

3.添加好用。

登陆?。

这个没界面。

后台把这些存到数据库里。

启动的时候。

seletc出来。

。

你给多少分。

都没人给你写的。

自己百度吧。

。

。

C++的UDP编程,设置广播地址为255.255.255.255,广播不出去

看起来不像是代码有错 而更像这两台机器的设置有问题。

几个问题: 1、从别的机器上发出的广播,这两台机器能收到吗? 2、从这两台机器向255.255.255.255发广播,如果在它们上面运行wireshark,能抓到UDP包吗? 3、这两台机器的网卡没有被设成promiscuous mode吧? 4、把这两台机器的网卡和其他工作的机器的网卡换了看看什么结果? 5、如果你的机器跑windows 7,可以在这两台机器和其他机器上用work and connection center里面自带work map看看各台机器之间是怎样连接的。

Java语言应用中实现UDP协议编程的方法?

//发送端SocketSendFile.java import java.io.*; import .*; public class SocketSendFile { public static final int SER_PORT=666; public static final int CLI_PORT=8484; public static final String SER_IP="192.168.0.35"; public static int bufSize = 1024; public static byte] mess = new bytebufSize]; //建立Socket引用 public static DatagramSocket dp; public static void main(String] args) throws Exception { dp = new DatagramSocket(SER_PORT); //调用构造函数SocketSendFile,并传递参数args0](所要传输的文件名) SocketSendFile(args0]); } public static void SocketSendFile(String file2) throws Exception { //定义一个计数器 int pos =0; //设置写入流 FileInputStream fis = new FileInputStream(file2); BufferedInputStream bis = new BufferedInputStream(fis); DataInputStream dis = new DataInputStream(bis); int i; do { i = dis.read(); int j=0; while (j<1024 & i != -1) { messpos++] = (byte) i; i=dis.read(); j++; } dp.send(new DatagramPacket(mess,pos,Address.getByName(SER_IP),CLI_PORT)); } while (i != -1); fis.close(); } } //接收端SocketReceiveFile.java import .*; import java.io.*; public class SocketReceiveFile { public static int bufSize=1024; public static byte] mess=new bytebufSize]; public static DatagramSocket dp; public static final int SER_PORT=8484; public static void main(String] args) throws Exception { dp = new DatagramSocket(SER_PORT); SocketReceiveFile(args0]); } public static void SocketReceiveFile(String file1) throws Exception { FileOutputStream fos = new FileOutputStream(file1); BufferedOutputStream bos = new BufferedOutputStream(fos); DataOutputStream dos = new DataOutputStream(bos); int i; DatagramPacket p = new DatagramPacket(mess,mess.length); while(true) { boolean j=false; while (p.getData().length != 0) { dos.write(p.getData()); dp.receive(p); j=true; } // System.out.println(new String(p.getData(),0,p.getLength())); if (j) System.out.println("文件传送完毕."); } // fos.close(); } }

瓜云互联:全场9折优惠,香港CN2、洛杉矶GIA高防vps套餐,充值最高返300元

瓜云互联怎么样?瓜云互联之前商家使用的面板为WHMCS,目前商家已经正式更换到了魔方云的面板,瓜云互联商家主要提供中国香港和美国洛杉矶机房的套餐,香港采用CN2线路直连大陆,洛杉矶为高防vps套餐,三网回程CN2 GIA,提供超高的DDOS防御,瓜云互联商家承诺打死退款,目前商家提供了一个全场9折和充值的促销,有需要的朋友可以看看。点击进入:瓜云互联官方网站瓜云互联促销优惠:9折优惠码:联系在线客...

PIGYun月付14.4元起,美国洛杉矶/韩国VPS七月6折

PIGYun是成立于2019年的国人商家,提供香港、韩国和美西CUVIP-9929等机房线路基于KVM架构的VPS主机,本月商家针对韩国首尔、美国洛杉矶CUVIP-AS29、GIA回程带防御等多条线路VPS提供6-8.5折优惠码,优惠后韩国首尔CN2混合BGP特惠型/美国洛杉矶GIA回程带10Gbps攻击防御VPS主机最低每月14.4元起。下面列出几款不同机房VPS主机配置信息,请留意不同优惠码。...

搬瓦工(季付46.7美元)新增荷兰(联通线路)VPS,2.5-10Gbps

搬瓦工最近新增了荷兰机房中国联通(AS9929、AS4837)线路的VPS产品,选项为NL - China Unicom Amsterdam(ENUL_9),与日本软银和洛杉矶(DC06)CN2 GIA配置一致可以互换,属于高端系列,2.5Gbps-10Gbps大带宽,最低季付46.7美元起。搬瓦工VPS隶属于老牌IT7公司旗下,主要提供基于KVM架构VPS主机,数据中心包括美国洛杉矶、凤凰城、纽...

udp编程为你推荐
计算机网络的定义计算机网络概念,特点?提升网站排名怎么提高网站排名啊网络地址分类A、B、C三类网络地址是如何划分的?请解释的通俗一点。accesspointHP elitebook2530p 用无线路由器时 要我输入一个ralink wireless access point 什么意思混乱模式拳皇2002的李梅怎么进入混乱模式?化学键理论化学键的定义化学键理论现代化学键理论认为苯环结构中不存在单双键交替结构,可以作为证据的事实是①苯不能使酸性KMnO 4 溶液褪2g内存条电脑2G内存够用吗?背投广告搜狐一个广告费用是多少软件更新不可用为什么vivo手机更新不了软件?
免费域名注册网站 高防服务器租用 北京服务器租用 最新代理服务器地址 域名备案只选云聚达 域名解析文件 香港ufo 最好的qq空间 绍兴电信 联通网站 四川电信商城 移动服务器托管 中国电信测速网站 lamp怎么读 睿云 时间服务器 so域名 godaddy域名 vi命令 内存 更多