开发者社区 问答 正文

qt创建SOCKET编译报错 ?报错

图片说明为什么用QT在windows下创建SOCKET套接字会报错,是不是编译器的问题啊,找来找去找不到问题啊。。。。。求大神相助,网络编程新手,还有就是我已经确定包含了WS2_32.lib

展开
收起
爱吃鱼的程序员 2020-06-23 21:23:01 641 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    QStringhostip="192.168.168.113";
    qint16port=8000;
    psocket=newQTcpSocket;
    psocket->connectToHost(QHostAddress(hostip),port);

    将变量的申明放在一个函数块的头部,好像改成这样就好了

    intsock_send(){WSADATAWSAdata;WORDver;SOCKETst;structsockaddr_inaddr;WSAStartup(ver,&WSAdata);st=socket(AF_INET,SOCK_DGRAM,0);memset(&addr,0,sizeof(addr));addr.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");addr.sin_family=AF_INET;addr.sin_port=htons(8080);return0;}

    试了下楼主的代码,在我的电脑上是能跑的,楼主要不删了build-XXXX-XX-XX文件夹,重新生成一下试试

    #include<WinSock2.h>intsock_send(){WSADATAWSAdata;WORDver;WSAStartup(ver,&WSAdata);SOCKETst=socket(AF_INET,SOCK_DGRAM,0);structsockaddr_inaddr;memset(&addr,0,sizeof(addr));addr.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");addr.sin_family=AF_INET;addr.sin_port=htons(8080);return0;}
    2020-06-23 21:23:20 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等