SFML udp通信实例

包含的lib库文件,免得一个一个复制名称:

sfml-window-d.lib
sfml-system-d.lib
sfml-audio-d.lib
sfml-graphics-d.lib
sfml-main-d.lib
sfml-network-d.lib
vorbis.lib
vorbisenc.lib
vorbisfile.lib

void runUdpClient(unsigned short port)
{
    // Ask for the server address
    sf::IpAddress server;
    do
    {
        std::cout << "Type the address or name of the server to connect to: ";
        std::cin >> server;
    } while (server == sf::IpAddress::None);

    // Create a socket for communicating with the server
    sf::UdpSocket socket;

    // Send a message to the server
    const char out[] = "Hi, I'm a client";
    if (socket.send(out, sizeof(out), server, port) != sf::Socket::Done)
        return;
    std::cout << "Message sent to the server: \"" << out << "\"" << std::endl;

    // Receive an answer from anyone (but most likely from the server)
    char in[128];
    std::size_t received;
    sf::IpAddress sender;
    unsigned short senderPort;
    if (socket.receive(in, sizeof(in), received, sender, senderPort) != sf::Socket::Done)
    {
        return;
    }
        
    std::cout << "Message received from " << sender << ": \"" << in << "\"" << std::endl;
}

using namespace sf;
void runUdpPackageClient()
{
    // Ask for the server address
    IpAddress adress("localhost");

    // Create a socket for communicating with the server
    sf::UdpSocket socket;

    Packet sendpacket;
    sendpacket << "ceshishuju";
    socket.send(sendpacket, adress, 1028);

    IpAddress remoteAddress;
    unsigned short remotePort;
    Packet packet;
    if (socket.receive(packet, remoteAddress, remotePort) != sf::Socket::Done)
    {
        return;
    }
    int yyyy = 666;
}

测试使用SocketTool.exe工具即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/767964.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Nginx】配置Nginx以支持主域名和二级域名

生命就像是一场告别 从起点对一切说再见 你拥有的仅仅是伤痕 在回望来路的时候 那天我们相遇在街上 彼此寒暄并报以微笑 我们相互拥抱挥手道别 转过身后已泪流满面 &#x1f3b5; 蔡健雅《当我想你的时候》 Nginx是一款高性能的Web服务器和反向代理服务器…

springboot/ssm本科生交流培养管理平台Java高校课程选课系统web

springboot/ssm本科生交流培养管理平台Java高校课程选课系统web 基于springboot(可改ssm)vue项目 开发语言&#xff1a;Java 框架&#xff1a;springboot/可改ssm vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1…

我的风采——android studio

目录 实现“我的风采”页面要求理论代码生成apk文件 实现“我的风采”页面 要求 要求利用’java框架的边框布局实现“找的风采 ”页而&#xff0c;其中中间为你的生活照&#xff0c;左右和下面为按钮&#xff0c;上面为标签 理论 Java GUI编程是Java程序设计的重要组成部分…

浩哥带你做项目,纯免费教学

浩哥带你做项目 一、YiYi-Web项目开发1. 简介2. 技术栈2.1 后端开发环境2.2 前端开发环境 3.项目截图 二、计算机游戏程序设计&#xff08;基础篇&#xff09;三、RuoYi-Cloud项目学习1.功能介绍2.项目截图 四、鸿蒙应用开发五、软考六、Linux基础知识学习 最近浩哥社区群涌进大…

项目1-加法计算器

1.创建项目 2.导入前端代码 2.1 static包内 2.2 测试前端代码是否有误 显示成功说明无误 2.3 定义用户接口 请求路径&#xff1a;calc/sum 请求方式&#xff1a;GET/POST 接口描述&#xff1a;计算两个整数相加 请求参数: 参数名类型是否必须备注num1Integer是参与计算的第…

JAVA 100道题(16)

16.编写一个程序&#xff0c;尝试打开一个不存在的文件&#xff0c;并捕获可能抛出的异常。 在Java中&#xff0c;你可以使用try-catch块来捕获和处理异常。下面是一个示例程序&#xff0c;尝试打开一个不存在的文件&#xff0c;并捕获FileNotFoundException异常&#xff1a; j…

面试宝典:MySQL中索引为什么使用B+树的深度分析

在高级数据库开发和优化的面试中&#xff0c;索引的结构和原理是一个绕不开的话题。MySQL中&#xff0c;B树是最常见的索引结构&#xff0c;它在性能和效率上都具有显著的优势。本文将深入分析为什么MySQL的索引选择使用B树&#xff0c;以及B树的特性如何使其成为数据库索引的理…

7.Java并发编程—掌握线程池的标准创建方式和优雅关闭技巧,提升任务调度效率

文章目录 线程池的标准创建方式线程池参数1.核心线程(corePoolSize)2.最大线程数(maximumPoolSize)3.阻塞队列(BlockingQueue) 向线程提交任务的两种方式1.execute()1.1.案例-execute()向线程池提交任务 2.submit()2.1.submit(Callable<T> task)2.2.案例-submit()向线程池…

PMP适合哪些人?考试PMP有什么职业要求吗?

威班PMP 3A路过拿证学员 。PMP认证没听说过有啥职业的要求&#xff0c;也没听说过限制在哪些行业可用&#xff0c;根据我考后经验所了解&#xff0c;它并不只作用在某一个领域&#xff0c;知识点也是项目管理相关的工作都能用到&#xff0c;毕竟这些都是通用的专业实践。如果非…

Spring Boot应用程序中如何优化Undertow的性能?

在Spring Boot应用程序中优化Undertow的性能,可以通过调整Undertow的配置参数来实现。以下是一些常见的优化策略: 1. 调整线程池设置 Undertow使用两个线程池:IO线程池和工作线程池(worker threads)。IO线程池负责处理非阻塞操作,而工作线程池处理阻塞操作。 io-thread…

ChatGPT论文指南|总结7个ChatGPT学术论文润色与评价好用的口诀!【建议收藏】

点击下方▼▼▼▼链接直达AIPaperPass &#xff01; AIPaperPass - AI论文写作指导平台 公众号原文▼▼▼▼&#xff1a; ChatGPT论文指南|分享13个学术论文写作ChatGPT口诀&#xff01;【建议收藏】 目录 1.论文润色 2.论文评价 3.书籍介绍 AIPaperPass智能论文写作平…

pytorch 实现多层神经网络MLP(Pytorch 05)

一 多层感知机 最简单的深度网络称为多层感知机。多层感知机由 多层神经元 组成&#xff0c;每一层与它的上一层相连&#xff0c;从中接收输入&#xff1b;同时每一层也与它的下一层相连&#xff0c;影响当前层的神经元。 softmax 实现了 如何处理数据&#xff0c;如何将 输出…

web前端(3.16笔记 html 标签)

一、标签&#xff1a; 语法规范&#xff1a;<标签名 属性名"属性值">标签体</标签名> 标签之间可以嵌套 属性&#xff1a;属性&#xff1a;定制元素的行为的。属性是不通用的&#xff0c;每一个标签存在自身的属性 标签的分类&#xff1a; 行内…

Qt 写一个邮件发送程序

最近在完成一个邮箱代替的告警功能&#xff0c;写了一个邮件发送的demo 以下为代码&#xff1a; #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include<QTcpSocket> namespace Ui { class MainWindow; }class MainWindow : public QMainWin…

Android 14.0 framework去掉长按webview界面弹框中的打开字符串

1.概述 在14.0系统Rom定制化开发中,在app中进入网页WebView控件加载网页后,长按网页会弹出分享和打开等等字样,但是产品需要觉得不想要这些选项 所以要求去掉这些选项所以就要 从WebView控件开始寻找相关的代码,所以要求去掉这些选项,接下来就分析下相关的流程来实现功能…

第四十五周:文献阅读

目录 摘要 Abstract 文献阅读&#xff1a;基于注意力的双向LSTM和编码器-解码器的水质预测 现有问题 提出方法 创新点 方法论 1、EMD&#xff08;经验模态分解&#xff09; 2、VMD&#xff08;变分模态分解&#xff09; 3、VBAED模型 研究实验 数据集 数据预处理 …

力扣15. 三数之和

思路&#xff1a;先对数组排序&#xff0c;然后确定第一个数nums[i]&#xff0c;再新建左右双指针&#xff1b; 寻找的3元组&#xff0c;a,b,c,即是 nums[i], nums[letf], nums[right] 数组1&#xff1a;-1,-1,-1,0,1,2; 前面3个-1&#xff0c;只有一个-1是有用的&#xff0c;需…

Android开发系列全套课程

教程介绍 本系列课程面向有java基础&#xff0c;想进入企业从事android开发的计算机专业者。学习搭配实战案例&#xff0c;高效掌握岗位知识。 学习地址 链接&#xff1a;https://pan.baidu.com/s/10p2NGYLM3NcCZwYjJZzfzw?pwdk4p0 提取码&#xff1a;k4p0

【智能算法】JAYA算法原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献 1.背景 2016年&#xff0c; Rao等人受到趋利避害性质启发&#xff0c;提出了JAYA算法&#xff08;JAYA梵文意思即胜利&#xff09;。 2.算法原理 2.1算法思想 JAYA基于趋利避害性质&#xff0c;表达式十…

Django ORM操作

【一】ORM操作 【1】配置数据库 &#xff08;1&#xff09;默认数据库 Django默认的数据库是sqlite3数据库settings.py 文件中配置数据库如下 DATABASES {default: {ENGINE: django.db.backends.sqlite3,NAME: BASE_DIR / db.sqlite3,} }&#xff08;2&#xff09;修改为M…