UPD Socket-基本用法

作者: NiceBlueChai | 来源:发表于2017-10-25 20:04 被阅读1次

UDP 是User Datagram Protocol的简称,
中文名是用户数据报协议

适用于局域网的主机通信
客户机-服务器系统(Client-Sever system)

使用方法

  • 创建socket
OS_SocketAdder local("127.0.0.1",9000);
OS_UdpSocket sock;
sock.open(lock,true);
  • 发送
OS_SocketAdder peer;
sock.SendTo(buf,n,peer);
  • 销毁socket
    sock.Close()

示例代码

//发送
#define _CRT_SECURE_NO_WARNINGS /* VS2013,2015需要这一行 */
#include <stdio.h>
#include <string.h>

#include "osapi/osapi.h"

int main()
{
    printf("发送方: port=9000 ...\n");

    OS_SockAddr local("127.0.0.1", 9000);
    OS_UdpSocket sock;
    sock.Open(local, true);

    while (1)
    {
        // 让用户输入一段文本
        char buf[128];
        printf("> ");
        gets_s(buf);
        }

    
        }
        int n = strlen(buf);

        // 发送
        //OS_SockAddr peer("192.168.71.129", 9001); // 对方地址
        //OS_SockAddr peer("192.168.71.1", 9001); // 对方地址
        OS_SockAddr peer("127.0.0.1", 9001); // 对方地址
        sock.SendTo(buf, n, peer);

        // 结束
        if (strcmp("bye", buf) == 0)
        {
            break;
        }
        
    }

    // 关闭socket
    sock.Close();
    return 0;
}
//接收
#include<stdio.h>
#include"osapi/osapi.h"

/*
    HOST_A发送方
*/
int main()
{
    printf("接收方:9001...\n");

    OS_SockAddr local("127.0.0.1", 9001);//本地IP和端口
    OS_UdpSocket socket;
    socket.Open(local, true);

    while (1)
    {
        char buf[128];
        OS_SockAddr peer;//发送方IP和端口
        int n=socket.RecvFrom(buf, 128, peer);//接收消息

        if(n<=0)
        {
            break;
        }

        buf[n] = 0;
        printf("Got: %s  \n", buf);

        //结束
        if (strcmp(buf, "bye") == 0)
        {
            break;
        }

    }
    //关闭socket
    socket.Close();
    return 0;
}

❤️


相关文章

  • UPD Socket-基本用法

    UDP 是User Datagram Protocol的简称,中文名是用户数据报协议 适用于局域网的主机通信客户机...

  • 使用ssh登陆docker容器

    基本操作docker run -it -p 2222:22 ubuntu /bin/bashapt-get upd...

  • 定时器

    setTimeout和clearTimeout基本用法 setInterval和clearInterval基本用法...

  • 2019-11-16

    E战到底DAY14 SUMIF和SUMIFS函数 一.基本用法 SUMIF基本用法 SUMIFS基本用法 SUMI...

  • 11 - 动态数据绑定实现原理

    一、defineProperty 基本用法 1、基本写法: 2、参数 3、descriptor 参数的基本用法 1...

  • as 基本用法

    插件安装 plugin auto import 相当于 eclipse ctrl+o 或者as alt+enter...

  • 基本用法

    Installation 安装 npm install vue vue-server-renderer --sav...

  • 基本用法

    html css js

  • 基本用法

    本地与远程:push 命令会把本地仓库推送到远程仓库(比如gitbub,码云)在push之前要与某个远程仓库建立连...

  • 基本用法

    TensorFlow使用图(graph)表示计算任务,图中的节点被称为op。一个Tensor一般为一个类型化的多维...

网友评论

    本文标题:UPD Socket-基本用法

    本文链接:https://www.haomeiwen.com/subject/onroyxtx.html