Qt 判断一个IPV4 地址单播/组播/广播地址

Qt相关 2021-02-27 162次浏览
文章目录[隐藏]

前言

最近在写Qt udp 接口类,我想用户在接口函数中传入一个 ip 地址后, 自动判断是用单播组播或者广播方式。

实现代码

   
   QHostAddr hostAddr = QHostAddr("192.168.1.1");

    if(hostAddr.isNull())
    {
        qDebug() << "address is null";
        return -1;
    }


    if(hostAddr.isEqual(QHostAddress::Broadcast))
    {
        qDebug() << "this is address is Broadcast";
    }
    else if(hostAddr.isMulticast())
    {
        qDebug() << "this is address is Multicast";
    }
    else
    {
        qDebug() << "this is address is Singlecast";
    }

主要点

QHostAddr 自带了判断一个 ip 是否时组播 ip。isMulticast

 

喜欢 (0)