服务端:

 #include<iostream>
#include<winsock2.h>
#include<stdio.h>
#pragma comment(lib,"WS2_32.lib")//显示连接套接字库
int main()
{
WSADATA data;//定义WSADATA结构体
WORD w=MAKEWORD(,);//定义版本号
char sztext[]="Welcome you\r\n";//定义并初始化发送到客户端的字符数组
::WSAStartup(w,&data);//初始化套接字库
SOCKET s;
s=::socket(AF_INET,SOCK_DGRAM,);
sockaddr_in addr,addr2;//定义套接字地址结构
int n=sizeof(addr2);
char buff[]={};//接收数据缓冲区
addr.sin_family=AF_INET;//初始化地质结构
addr.sin_port=htons();
addr.sin_addr.S_un.S_addr=INADDR_ANY;
::bind(s,(sockaddr*)&addr,sizeof(addr));//绑定套接字
printf("UDP Server already start!\r\n");
if(::recvfrom(s,buff,,,(sockaddr*)&addr2,&n)!=-)//接收客户端信息
{
printf("%s already connect\r\n",inet_ntoa(addr2.sin_addr));
::sendto(s,sztext,sizeof(sztext),,(sockaddr*)&addr2,n);//向客户端发送字符数组
::closesocket(s);//关闭套接字句柄
::WSACleanup();//释放套接字库
}
if(getchar())
{
return ;
}
else
{
::Sleep();
}
}

客户端:

 #include<iostream>
#include<winsock2.h>
#include<stdio.h>
#pragma comment(lib,"WS2_32.lib")//显示连接套接字库
int main()
{
WSADATA data;//定义WSADATA结构体
WORD w=MAKEWORD(,);//定义版本号
::WSAStartup(w,&data);//初始化套接字库
SOCKET s;
s=::socket(AF_INET,SOCK_DGRAM,);//创建TCP套接字
sockaddr_in addr,addr2;
int n=sizeof(addr2);
char buff[]="Wde";
char sztext[]={};
addr.sin_family=AF_INET;//初始化地质结构
addr.sin_port=htons();
addr.sin_addr.S_un.S_addr=inet_addr("10.203.117.150");
printf("UDP Clienct already start\r\n");
if(::sendto(s,sztext,sizeof(sztext),,(sockaddr*)&addr,n)!=)
{
::recvfrom(s,buff,,,(sockaddr*)&addr2,&n);
printf("Server say:%s\r\n",buff);
::closesocket(s);
::WSACleanup();//释放套接字库
}
if(getchar())
{
return ;
}
else
{
::Sleep();
}
}

[C++] socket - 2 [UDP通信C/S实例]的更多相关文章

  1. C# 通过socket实现UDP 通信

    UDP不属于面向连接的通信,在选择使用协议的时候,选择UDP必须要谨慎.在网络质量令人十分不满意的环境下,UDP协议数据包丢失会比较严重.但是由于UDP的特性:它不属于连接型协议,因而具有资源消耗小, ...

  2. Linux 简单socket实现UDP通信

    服务器端 #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sy ...

  3. Python的网络编程[0] -> socket[2] -> 利用 socket 建立 TCP/UDP 通信

    Socket 目录 socket 的 TCP/IP 通信基本建立过程 socket 的 UDP 通信基本建立过程 socket 的 UDP 广播式通信基本建立过程 socket 的多线程通信建立过程 ...

  4. C#的Socket实现UDP协议通信

    今天稍花化了一点时间,利用C#的Socket验证了UDP的通信,为接下来特地利用UDP做个分布式的通信仿真系统打下基础.众所周知,UDP 就是用户数据报协议,在互联网参考模型的第四层——传输层.与TC ...

  5. Java网络编程UDP通信原理

    前言 继续今天我们的Java网络编程--TCP和UDP通信 一.TCP和UDP概述 传输层通常以TCP和UDP协议来控制端点与端点的通信   TCP UDP 协议名称 传输控制协议 用户数据包协议 是 ...

  6. VC++使用socket进行TCP、UDP通信实例总结

    1.        两台计算机通信需要协议,通信的两台计算机IP必须唯一 2.        同一个计算机可以进行多个应用程序与其他计算机通信,IP地址唯一,而端口号是区别同一计算机(同一IP)的唯一 ...

  7. Python基于socket模块实现UDP通信功能示例

    Python基于socket模块实现UDP通信功能示例 本文实例讲述了Python基于socket模块实现UDP通信功能.分享给大家供大家参考,具体如下: 一 代码 1.接收端     import ...

  8. [C语言]一个很实用的服务端和客户端进行UDP通信的实例

    前段时间发了个TCP通信的例子,现在再来一个UDP通信的例子.这些可以作为样本程序,用到开发中.“裸写”socket老是记不住步骤,经常被鄙视…… 下面的例子很简单,写一个UDP的server用于收包 ...

  9. C语言socket编程----实现UDP通信

    TCP/IP协议叫做传输控制/网际协议,又叫做网络通信协议.实际上,它包括上百个功能的协议. 套接字(socket):在网络中用来描述计算机中不同程序与其他计算程序的通信方式. 套接字分为三类; 流式 ...

随机推荐

  1. WCF第二天

    消息  : 消息是一个独立的数据单元,它可能由几个部分组成,包括消息正文和消息头.     服务  :  服务是一个构造,它公开一个或多个终结点,其中每个终结点都公开一个或多个服务操作.   终结点 ...

  2. docker创建镜像的几个命令

    docker create -it --name mongodb mongo/myubuntu1. docker start mongodbdocker exec -it mongodb bash i ...

  3. Selenium2+python自动化3-解决pip使用异常

    一.pip出现异常 有一小部分童鞋在打开cmd输入pip后出现下面情况:Did not provide a commandDid not provide a command?这是什么鬼?正常情况应该是 ...

  4. Codeforces Round #382 (Div. 2) 继续python作死 含树形DP

    A - Ostap and Grasshopper zz题能不能跳到  每次只能跳K步 不能跳到# 问能不能T-G  随便跳跳就可以了  第一次居然跳越界0.0  傻子哦  WA1 n,k = map ...

  5. MySql表名的大小写问题

    MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大小写的: 4 ...

  6. easyul获取各种属性ID 和赋值

    //span赋值 $('#state1').text("审核通过"); //textarea赋值 $("#memo").val('');  //隐藏域 $(&q ...

  7. display 显示隐藏 ESAYuI

    $("#rejectCauseDisplay").css('display',"block");     $("#rejectCauseDisplay ...

  8. hdu 4006 The kth great number (优先队列)

    /********************************************************** 题目: The kth great number(HDU 4006) 链接: h ...

  9. memcache与memcached介绍及安装配置

    也许大家一看到Memcache和Memcached会有点晕,这两者有什么关系又有什么区别呢,下面先给大家说下Memcached,Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应 ...

  10. 使用 IntraWeb (44) - 测试读取 SqLite (三)

    使用数据连接池(TIWDataModulePool). 新建工程时勾选 Pool Data Connections: 新增的 Pool(TIWDataModulePool) 被放在 ServerCon ...