socket connect 返回-1 连接失败
// Clinet1.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <sys/types.h>
#include <WinSock2.h>
#pragma comment ( lib , "wsock32") ;
int main ()
{
WSADATA wsaData;
WORD sockVersion = MAKEWORD(2, 2);
//加载winsock库
if(WSAStartup(sockVersion, &wsaData) != 0)
return 0;
struct sockaddr_in peer;
SOCKET s ;
int rc ;
char buf[1] ;
peer.sin_family = AF_INET ;
peer.sin_port = 7500 ;
peer.sin_addr.s_addr = inet_addr( "127.0.0.1" ) ;
s=socket( AF_INET , SOCK_STREAM , 0 ) ;
if( s < 0 )
{
printf( "socket call failed" ) ;
/* exit( 1 ) ;*/
}
rc = connect( s , ( struct sockaddr * ) & peer ,sizeof ( peer ) ) ;
if ( rc )
{
printf(" connect call fialed ") ;
printf( "\n") ;
}
rc = recv( s , buf , 1 , 0 ) ;
if ( rc <= 0 )
{
printf("send call failed") ;
printf( "\n") ;
}
}
...全文
相关推荐
windows下设置socket的connect超时
, sizeof(serv_addr)) == -1) { // 处理连接失败的情况}```调用`connect`函数尝试建立连接。
Linux下Socket连接超时的一种实现方法
其次,在调用 connect 函数连接对端主机时,如果失败,需要判断当前的 errno 是否为 EINPROGRESS,也就是说是不是连接正在进行中。如果是,转到步骤 3,如果不是,返回错误。
总结:Linux中socket常见错误分析
在某些情况下,客户端会尝试多次重试连接,但最终会返回错误。值得注意的是,如果connect失败,套接字需要关闭并重新初始化。
Socket编程所有函数说明[详细]
**返回值:**- 成功:返回一个新的socket描述符,用于与客户端通信。- 失败:返回-1,具体错误原因可通过`errno`获取。
PortScanner--Connect.rar_Portscanner_connect_portscann
在C++或Python等语言中,我们可以创建一个socket对象,然后尝试连接目标IP地址和端口号。如果连接成功,说明端口开放;如果连接失败,如返回错误代码,可以判断端口未开放或者网络问题。


