我的程序是这样:
udpSocket->bind(QHostAddress("192.168.20.118"), 16670);
QString ip;
connect(udpSocket, SIGNAL(readyRead()), this, SLOT(readPendingDatagram()));
void NetWork::readPendingDatagram()
{
ip = udpSocket->peerAddress().toString();
while(udpSocket->hasPendingDatagrams())
{
QByteArray datagramRecv;
datagramRecv.resize(udpSocket->pendingDatagramSize());
udpSocket->readDatagram(datagramRecv.data(), datagramRecv.size());
qDebug() << (tr("接收数据: %1 %2").arg(datagramRecv.data()).arg(recvNo));
qDebug() << (tr("IP is : %1").arg(ip));
recvNo++;
}
}
ip是空的,没有数据,这是怎么回事?