QT网络编程 请帮忙解决问题

发布于 2022-08-03 23:23:57 字数 2666 浏览 22 评论 0

分别编了客户端和服务器端通信的程序,服务器端写,客户端读,但是客户端的程序编译可以通过,而运行的时候出现了段错误
以下是客户端程序 form1.ui.h
1)套接字对象的定义
            QSocketDevice *ServerSocket;
            QSocketNotifier *ServerNotifier;
       2)套接字的初始化

            QHostAddress MyAddress;
            QString FakeAddress;
            FakeAddress = "127.0.0.1";
            MyAddress.setAddress(FakeAddress);
            UINT Port=1234;
            ServerSocket=new QSocketDevice(QSocketDevice::Stream);
            ServerNotifier = new QSocketNotifier(ServerSocket->socket(),QSocketNotifier::Read,0,"ServerSocket");
             connect(ServerNotifier,SIGNAL(activated(int)),this,SLOT(OnMReceive()));



   void form1::OnMReceive()
            {
                QSocketDevice *ServerSocket;

                int ByteCount,ReadCount;
                 char *IncommingChar;
                 fprintf(stderr,"Load a piece of Message!n");
                ByteCount=ServerSocket->bytesAvailable();
                IncommingChar=(char *)malloc(ByteCount+1);
                 ReadCount=ServerSocket->readBlock(IncommingChar,ByteCount);
                IncommingChar[ByteCount]='';

                fprintf(stderr,“%s“,IncommingChar); //打印接收的字符串
           }

程序运行到:在终端显示:Load a piece of Message! 就显示了:段错误

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文