connect

connect

用于創建與指定外部端口的連接
connect()本函數用于創建與指定外部端口的連接。s參數指定一個未連接的數據報或流類套接口。如套接口未被捆綁,則系統賦給本地關聯一個唯一的值,且設置套接口為已捆綁。請注意若名字結構中的地址域為全零的話,則connect()将返回WSAEADDRNOTAVAIL錯誤。[1]
  • 中文名:連接
  • 外文名:
  • 所屬學科:
  • 英文名:connect
  • 相關函數:socket、bind、listen
  • 表頭文件:#include
  • 定義函數:int connect

相關函數

connect(建立socket連線)

socket,bind,listen

表頭文件

#include

#include

定義函數

int connect(int sockfd,struct sockaddr*serv_addr,int addrlen);

函數說明

connect()用來将參數sockfd的socket連至參數serv_addr指定的網絡地址。結構sockaddr請參考bind()。參數addrlen為sockaddr的結構長度。

參數

參數一:套接字描述符

參數二:指向數據結構sockaddr的指針,其中包括目的端口和IP地址

參數三:參數二sockaddr的長度,可以通過sizeof(struct sockaddr)獲得

返回值

成功則返回0,失敗返回非0,錯誤碼GetLastError()。

錯誤代碼

EBADF參數sockfd非合法socket處理代碼

EFAULT參數serv_addr指針指向無法存取的内存空間

ENOTSOCK參數sockfd為一文件描述詞,非socket。

EISCONN參數sockfd的socket已是連線狀态

ECONNREFUSED連線要求被server端拒絕。

ETIMEDOUT企圖連線的操作超過限定時間仍未有響應。

ENETUNREACH無法傳送數據包至指定的主機。

EAFNOSUPPOR Tsockaddr結構的sa_family不正确。

EALREADY socket為不可阻斷且先前的連線操作還未完成。

相關詞條

相關搜索

其它詞條