onnect函數将使用參數sockfd中的套接字連接配接到參數serv_addr中指定的伺服器。參數addrlen為serv_addr指向的記憶體空間大小。
如果參數sockfd的類型為SOCK_DGRAM,serv_addr參數為資料報發往的位址,且将隻接收該位址的資料報。如果sockfd的類型為SOCK_STREAM或SOCK_SEQPACKET,調用該函數将連接配接serv_addr中的伺服器位址。
錯誤資訊:
EACCES, EPERM:使用者試圖在套接字廣播标志沒有設定的情況下連接配接廣播位址或由于防火牆政策導緻連接配接失敗。
EADDRINUSE:本地位址處于使用狀态。
EAFNOSUPPORT:參數serv_add中的位址非合法位址。
EAGAIN:沒有足夠空閑的本地端口。
EALREADY:套接字為非阻塞套接字,并且原來的連接配接請求還未完成。
EBADF:非法的檔案描述符。
ECONNREFUSED:遠端位址并沒有處于監聽狀态。
EFAULT:指向套接字結構體的位址非法。
EINPROGRESS:套接字為非阻塞套接字,且連接配接請求沒有立即完成。
EINTR:系統調用的執行由于捕獲中斷而中止。
EISCONN:已經連接配接到該套接字。
ENETUNREACH:網絡不可到達。
ENOTSOCK:檔案描述符不與套接字相關。
ETIMEDOUT:連接配接逾時。
原文連結:https://blog.csdn.net/m0_67394360/article/details/126327017