SFML udp通信实例

news/2024/12/22 16:14:00/

包含的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.ppmy.cn/news/1394878.html

相关文章

sqlplus格式设置

一、语法 1.当前连接生效 设置sqlplus模式显示总行数: SQL> show pagesize; --查看目前的pagesizeSQL> set pagesize 100; --设置pagesize为100设置sqlplus模式显示行宽度&#xff1a; SQL> show linesize; --查看当前的linesize宽度SQL> set linesize 100; --设…

抽取CLOB字段中XML的特定元素的VALUE值

在ORACLE数据库中&#xff0c;有时XML文件会被保存在CLOB字段中。 这时候&#xff0c;若是我们要获取此字段XML中特定元素的VALUE值&#xff0c;就需要用到xmltype 这个函数。 如下面的 XML文件&#xff0c;保存在 TABLE_A 的CLOB_K 字段&#xff0c;若是我们要获取其中的 Y…

C#使用ASP.NET Core Razor Pages构建网站(一)

一、了解Web开发 Web开发就是使用HTTP&#xff08;超文本传输协议&#xff09;进行开发。 HTTP HTTP&#xff08;Hypertext Transfer Protocol&#xff09;是一种用于传输超文本和相关数据的应用层协议。它是Web上数据通信的基础&#xff0c;被用于从Web服务器传输到客户端浏…

福建科立讯通信 指挥调度管理平台 SQL注入漏洞复现(CVE-2024-2620、CVE-2024-2621)

0x01 产品简介 福建科立讯通信指挥调度管理平台是一个专门针对通信行业的管理平台。该产品旨在提供高效的指挥调度和管理解决方案,以帮助通信运营商或相关机构实现更好的运营效率和服务质量。该平台提供强大的指挥调度功能,可以实时监控和管理通信网络设备、维护人员和工作任…

10种常用排序算法简介

常用排序算法 冒泡排序&#xff08;Bubble Sort&#xff09; 选择排序&#xff08;Selection Sort&#xff09; 插入排序&#xff08;Insertion Sort&#xff09; 希尔排序&#xff08;Shell Sort&#xff09; 归并排序&#xff08;Merge Sort&#xff09; 快速排序&…

第五章 JVM

什么是 JVM? 1. JVM 是一种用于计算设备的规范&#xff0c;它是一个虚构出来的机器&#xff0c;是通过在实际的计算机上仿真模拟各种功能实现的。 2. JVM 包含一套字节码指令集&#xff0c;一组寄存器&#xff0c;一个栈&#xff0c;一个垃圾回收堆和一个存储方法域。 3. J…

opencv各个模块介绍(2)

Features2D 模块&#xff1a;特征检测和描述子计算模块&#xff0c;包括SIFT、SURF等算法。 Features2D 模块提供了许多用于特征检测和描述子匹配的函数和类&#xff0c;这些函数和类可用于图像特征的提取、匹配和跟踪。 FeatureDetector&#xff1a;特征检测器的基类&#xf…

图论基础|695. 岛屿的最大面积、1020. 飞地的数量、130. 被围绕的区域

695. 岛屿的最大面积 力扣题目链接(opens new window) 给你一个大小为 m x n 的二进制矩阵 grid 。 岛屿 是由一些相邻的 1 (代表土地) 构成的组合&#xff0c;这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你可以假设 grid 的四个边缘都被 0&#xff0…