bind函式介紹

2021-10-08 16:45:52 字數 744 閱讀 9140

#include

/* see notes */

#include

intbind

(int sockfd,

const

struct sockaddr *addr, socklen_t addrlen)

;

sockfd:

伺服器程式所監聽的網路位址和埠號通常是固定不變的,客戶端程式得知伺服器程式的位址和埠號後就可以向伺服器發起連線,因此伺服器需要呼叫bind繫結乙個固定的網路位址和埠號。

如:

struct sockaddr_in servaddr;

bzero

(&servaddr,

sizeof

(servaddr));

servaddr.sin_family = af_inet;

servaddr.sin_addr.s_addr =

htonl

(inaddr_any)

;servaddr.sin_port =

htons

(6666

);

首先將整個結構體清零,然後設定位址型別為af_inet,網路位址為inaddr_any,這個巨集表示本地的任意ip位址,因為伺服器可能有多個網絡卡,每個網絡卡也可能繫結多個ip位址,這樣設定可以在所有的ip位址上監聽,直到與某個客戶端建立了連線時才確定下來到底用哪個ip位址,埠號為6666。

bind()函式 listen()函式

bind 函式 include include int bind int sockfd,const struct sockaddr addr,socklen t addrlen 12 3sockfd是返回socket函式的返回值 addr 傳入引數 struct sockaddr addr addr...

bind函式詳解

前面我們已經說了,套接字也建立了,地方 也定義了,下面就需要將socket放置在這個 地方 tcp 將他們緊緊地 在一起,用bind函式吧,我們來看看函式原型 int pascal far bind socket s,const struct sockaddr far addr,int namele...

bind函式解析

名稱 bind 把名字和套接字相關聯 使用格式 include include intbind int sockfd const struct sockaddr addr socklen t addrlen 功能描述 當用socket 函式建立套接字以後,套接字在命名空間 網路位址族 中存在,但沒有...