渔樵者 2017-12-14 07:44 采纳率: 33.3%
浏览 880
已采纳

网络编程,启动就显示连接错误。

启动就显示连接错误。不知道怎么回事?

 #include <stdio.h>
#include <WinSock2.h>
#include <iostream>
#include <string>

#define  debug_my    1

using namespace std;
#pragma  comment(lib,"ws2_32.lib")

int main()
{
    WORD sockVersion  = MAKEWORD(2,2);
    WSADATA data;
    if (WSAStartup(sockVersion,&data)!= 0)
    {
        return 0;
    }

    while(true)
    {
        SOCKET sclient = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
        if (sclient == INVALID_SOCKET)
        {
            printf("invalid scoket!");
            return 0;
        }

        sockaddr_in serAddr;
        serAddr.sin_family = AF_INET;
        serAddr.sin_port   = htons(77777);
        serAddr.sin_addr.S_un.S_addr = inet_addr("192.168.6.19");


        if (connect(sclient,(sockaddr *)&serAddr,sizeof(serAddr))==SOCKET_ERROR)
        {
            printf("connect error!!");
            closesocket(sclient);
#if debug_my
            getchar();
#endif
            return 0;
        }

        string data;
        cin >> data;
        const char* senddata;
        senddata = data.c_str();
        send(sclient,senddata,sizeof(senddata),0);

        char recvData[255];
        int ret = recv(sclient,recvData,255,0);
        if (ret>0)
        {
            recvData[ret] =0X00;
            printf(recvData);
        }
        closesocket(sclient);

    }

    WSACleanup();
    return 0;
}




  • 写回答

2条回答 默认 最新

  • The_CSDN_newcomer 2017-12-14 07:51
    关注

    服务器确定能连上吗?你可以试试用WSAGetLastError得到错误信息。建议你看看文档:https://msdn.microsoft.com/en-us/library/ms737625(VS.85).aspx。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示