QTcpSocket:read疏失

QTcpSocket::read出错#include QTcpSocketint main(){//服务器端使用VS2008写的,代码如下://int len10

QTcpSocket::read出错

#include <QTcpSocket>

int main()
{
    //服务器端使用VS2008写的,代码如下:
    //int len=10;
    //send(s,(char*)&len,sizeof(len),0);
    //服务器端发送成功,GetLastError返回0
    QTcpSocket socket;
    socket.connectToHost("127.0.0.1",3333);
    int len;
    if(socket.waitForConnected()){
        //这一句返回0,没接到数据
        socket.read((char*)&len,sizeof(len));
        printf("%d\n",len);
    }
    while(1){}//等待……
    socket.close();
}

为什么呢?错误出在哪里呢?
[解决办法]
read 前加一句试试:
socket->waitForReadyRead(XXXX);