📄 udpdsample.htm
字号:
<HTML><HEAD><TITLE>DOS Internet Programming APIs</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="He Lingsong" name=Author>
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<META content=DOS,FTP,HTTP,email,smtp,web,www,server,tcp,wattcp,free
name=KeyWords></HEAD>
<BODY><B><FONT color=#cc0000>UDP服务器程序样例:</FONT></B>
<BLOCKQUOTE><TT><FONT color=#006600><FONT size=+1>#include
<stdio.h></FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1>#include <stdlib.h></FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1>#include <string.h></FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>#include
<conio.h></FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1>#include <dos.h></FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1>#include <time.h></FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>#include
<alloc.h></FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1>#include "tcplib.h"</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT
size=+1>//========================================</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>UDPSocket udps;</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>char udpbuf[520];</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>int hostport;</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>int udpl=0;</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT
size=+1>//========================================</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>int
checkudp(void)</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1>{int len;</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> udp_kernal(NULL);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> if (udpl==0)</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>
{listen_udp(udps,hostport);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1>
udpl=1;</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> }</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> if (!peer_udp_data(udps)) return
0;</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> len=udp_recv(udps,udpbuf,512);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> udpbuf[len]=0;</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT
size=+1> close_udp((UDPSocket)udps);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> udpl=0;</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> return 1;</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1>}</FONT></FONT></TT>
<P><TT><FONT color=#006600><FONT
size=+1>//=========================================</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>int main()</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>{int rc,sum=0;</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1> char
buf[128];</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> printf("\nUDP SERVER 8888\n");</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> init_tcplib();</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT
size=+1> hostport=8888;</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> udps=new_udpsocket();</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT
size=+1> listen_udp(udps,hostport);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> udpl=1;</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> while(!kbhit())</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1>
{rc=checkudp();</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> if (rc>0)</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1>
{sum++;</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> printf("Received %d:
%s\n",sum,udpbuf);</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1> sprintf(buf,"%d: Hi,How are you
?\r\n",sum);</FONT></FONT></TT> <BR><TT><FONT color=#006600><FONT
size=+1>
udp_send_back(udps,hostport,buf,strlen(buf));</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> }</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT size=+1> }</FONT></FONT></TT>
<BR><TT><FONT color=#006600><FONT
size=+1> release_udpsocket(udps);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1> return(0);</FONT></FONT></TT> <BR><TT><FONT
color=#006600><FONT size=+1>}</FONT></FONT></TT> <BR> </P></BLOCKQUOTE> </BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -