典型的socket链接

来源:互联网 发布:代理记账公司软件 编辑:程序博客网 时间:2024/04/30 10:39

        SOCKET sockConn;
        if ( (sockConn = socket(AF_INET,SOCK_STREAM,0)) == INVALID_SOCKET )
        {
        
            return ;
        }
       
        u_long ul = 1;
        int ret = ioctlsocket(sockConn,FIONBIO,(u_long*)&ul);
        if (ret == SOCKET_ERROR)
        {
            closesocket(sockConn);
            return ;
        }
       
        SOCKADDR_IN addrSock;
        addrSock.sin_addr.S_un.S_addr = inet_addr(m_strIP);
        addrSock.sin_family = AF_INET;
        addrSock.sin_port = htons(7890);
       
        connect(sockConn,(SOCKADDR*)&addrSock,sizeof(SOCKADDR));
       
        struct timeval tv;
        fd_set fs;
       
        FD_ZERO(&fs);
        FD_SET(sockConn,&fs);
        tv.tv_sec = 1;
        tv.tv_usec = 0;
        ret = select(0,0,&fs,0,&tv);
        if (ret <= 0)
        {
            closesocket(sockConn);
           
            return ;
        }

原创粉丝点击