文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>最简单的UDP程序

最简单的UDP程序

时间:2010-09-04  来源:resound

不喜欢看太复杂的原理说明,只为快速地编出程序,这个是经过简化的最简单的UDP发送程序:

 

代码
// mywsk.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include
<stdio.h>
#include
<winsock.h>
#pragma comment(lib, "Ws2_32.lib")

void handle_error(void); /* Error handler routine */

int main()
{
WORD wVersionRequested;
/* 需要的socket dll 版本信息 */
WSADATA wsaData;
/* data for socket lib initialization */
// 初始化winsock库
wVersionRequested = 0x0101; /* 版本号:1.1 */
if ( !WSAStartup( wVersionRequested, &wsaData ) )
{
// 这里要检查一下版本号是否正确,为简化,去掉了
// 打开一个UDP socket
SOCKET sock; /* socket */
struct sockaddr_in address; /* SOCKET地址 */
if ( (sock = socket(AF_INET, SOCK_DGRAM ,0 /*IPPROTO_UDP*/)) != INVALID_SOCKET )
{
address.sin_family
=AF_INET; /* internet */
address.sin_port
= htons(60000); /* 端口号 */
address.sin_addr.s_addr
=inet_addr("127.0.0.1"); // 目的IP地址,向本机发送写"127.0.0.1"

// 循环发送
for(int i=0;i<5000;i++)
{
int err; /* 错误号 */
char buf[256];
sprintf(buf,
"Hello,world! i=%d!",i);
// 发送这个字符串
err=sendto(sock,buf,strlen(buf),0,(struct sockaddr *)&address,sizeof(address));
printf(
"Sent: %s, err:%d\n", buf,err); // err>0时,为发送字节数
}

}
}
WSACleanup();
/* clean up before exit */
exit(
0);
}

 

相关阅读 更多 +
排行榜 更多 +
方块枪战战场安卓版

方块枪战战场安卓版

飞行射击 下载
战斗火力射击安卓版

战斗火力射击安卓版

飞行射击 下载
空中防御战安卓版

空中防御战安卓版

飞行射击 下载