zoukankan      html  css  js  c++  java
  • UDP通信.

    在“.pro”文件中添加如下语句:
    QT += network
    在h头文件中包含相关头文件
    #include <QUdpSocket>
    在头文件中添加QUdpSocket的类成员变量与函数
    private:
        QUdpSocket *udpSocket;;
        void dataSend();
    
    private slots:
        void dataReceived();
    在源文件cpp添加声明:
    #include <QHostAddress>
    在源文件cpp文件构造函数中添加如下语句:
    udpSocket = new QUdpSocket(this); 
    connect(udpSocket, SIGNAL(readyRead()), this, SLOT(dataReceived()));
    //udpSocket->bind(8080);//如果是server端接收数据,需要调用bind指定端口
    在源文件cpp添加dataReceived()槽函数的实现代码
    void Widget::dataReceived()
    {
     char buf[1024];
        while(udpSocket->hasPendingDatagrams())
        {
            memset(buf, 0, sizeof(buf));
                    udpSocket->readDatagram(buf, sizeof(buf));
            QMessageBox::information(this, tr("data"), buf);
        }
    }
    在源文件cpp添加发送UDP数据的实现代码
    void Widget::dataSend()
    {
        QHostAddress *serverIP = new QHostAddress();
        serverIP->setAddress("127.0.0.1");
        char buf[1024];
        memset(buf, 0, sizeof(buf));
        strcpy(buf, "hello world
    ");
        udpSocket->writeDatagram(buf, strlen(buf), *serverIP , 8080);
        delete serverIP;
    
    }
  • 相关阅读:
    volatile 关键字
    C++ 强制类型转换
    HTTP详解2-请求、响应、缓存
    HTTP详解1-工作原理
    C++ 基本知识
    (转)c++类的成员函数存储方式(是否属于类的对象)---一道面试题引发的思考
    C++ inline
    P1075 质因数分解
    P1085 不高兴的津津
    P5015 标题统计
  • 原文地址:https://www.cnblogs.com/shichuan/p/4497937.html
Copyright © 2011-2022 走看看