无法在QTcpSocket上写入数据

时间:2016-04-19 00:56:19

标签: c++ qt

我正在尝试使用Qt / C ++实现客户端/服务器应用程序,但每当我尝试在QTcpSocket上写入数据时,程序就会终止。我收到以下错误:

  

服务器已启动。该计划意外地完成了。

     

/ home / pavan / qt / build-server-Desktop-Debug / server崩溃。

这是我的代码:

void server::on_pushButton_clicked()
{

    Server=new QTcpServer(this);
    if(Server->listen(QHostAddress::Any,ui->lineEdit->text().toInt()))
        qDebug()<<"Server started";
    else
    {
        qDebug()<<"Could not start server";
        return;
    }

    QTcpSocket *socket = Server->nextPendingConnection();

    socket->write("Hii server");
    socket->flush();
    socket->waitForBytesWritten((3000));

    socket->close();
}

提前致谢。

1 个答案:

答案 0 :(得分:0)

请检查nextPendingConnection的返回值。如果没有挂起的连接,它可以返回0。它可能导致崩溃。并且您可以尝试使用调试器来帮助您识别和解决很多问题。