linux下 socket函式的返回值代表什麼

2021-08-21 00:04:47 字數 1135 閱讀 1883

1樓:小雨手機使用者

int socket;domain指明所使用的協議族,通常為pf_inet,表示網際網路協議族;type引數指定socket的型別:sock_stream 或sock_dgram,socket介面還定義了原始socket,允許程式使用低層協議;protocol通常賦值"0"。

socket()呼叫返回一個整型socket描述符,你可以在後面的呼叫使用它。 socket描述符是一個指向內部資料結構的指標,它指向描述符表入口。

呼叫socket函式時,socket執行體將建立一個socket,實際上"建立一個socket"意味著為一個socket資料結構分配儲存空間。 socket執行體為你管理描述符表。

2樓:

int socket(int domain, int type, int protocol);domain指明所使用的協議族,通常為pf_inet,表示網際網路協議族(tcp/ip協議族);type引數指定socket的型別:sock_stream 或sock_dgram,socket介面還定義了原始socket(sock_raw),允許程式使用低層協議;protocol通常賦值"0"。socket()呼叫返回一個整型socket描述符,你可以在後面的呼叫使用它。

socket描述符是一個指向內部資料結構的指標,它指向描述符表入口。呼叫socket函式時,socket執行體將建立一個socket,實際上"建立一個socket"意味著為一個socket資料結構分配儲存空間。 socket執行體為你管理描述符表。

兩個網路程式之間的一個網路連線包括五種資訊:通訊協議、本地協議地址、本地主機埠、遠端主機地址和遠端協議埠。

該函式如果呼叫成功就返回新建立的套接字的描述符,如果失敗就返回invalid_socket。套接字描述符是一個整數型別的值。每個程序的程序空間裡都有一個套接字描述符表,該表中存放著套接字描述符和套接字資料結構的對應關係。

該表中有一個欄位存放新建立的套接字的描述符,另一個欄位存放套接字資料結構的地址,因此根據套接字描述符就可以找到其對應的套接字資料結構。每個程序在自己的程序空間裡都有一個套接字描述符表但是套接字資料結構都是在作業系統的核心緩衝裡。

3樓:匿名使用者

socke成功後要進行別的操作吧,別的函式操作什麼呢?就是那個檔案描述符告訴它的。

linux下python定義的函式可以直接呼叫?還是要設定環

肯定不可能直接bai呼叫。只知道 root bashrc,新增以du下行 alias mycodedir cd root source code 儲存,zhi然後重新dao啟動,以後在命令列輸回入mycodedir 即可執行命答令 cd root source code 這種方式的 首先編bai寫d...

關於Linux的fork,關於linux下fork 函式的問題

or 你初學者吧,請把賦值 和 值比較 搞清楚啊 value assignment value compare 關於linux下fork 函式的問題 這個和printf 的列印規則有關。當呼叫printf時,列印內容並不一定會實時輸出到終端,而是先存到緩衝中,在如下情況之一輸出到終端 1 遇到換行。...

Linux的LN命令問題,linux下ln命令的問題

ln newlib 1.13.0 newlib newlib 少了一個空格 你在輸命令的時候,要習慣用tab鍵,如果連續按兩次tab鍵出不來,那麼說明這個檔案不存在,或者你輸入有錯。linux下 ln 命令的問題 linux中的符號連結跟windows的快捷方式根本不是一個概念,相差甚遠。比如你有個...