有關網路程式設計

2022-08-30 22:18:19 字數 634 閱讀 4901

1. 使用getaddrinfo獲取主機ip,這種方法受系統,hostname與ip的繫結配置有關,最後不要用localhost,一般localhost配置的ip為127.0.0.1

另一種方法是使用getifaddress,沒用過

int getip(char *host, char *buf, int size)

for(rp = result; rp != null; rp = rp->ai_next)

if(rp != null)

// release buf

freeaddrinfo(result);

return (rp == null) ? -1 : 0;

}

2. address already in use錯誤

寫的乙個py指令碼需要多次listen在斷開,但在第二次斷開時,報了這個錯。

因為tcp協議中有time_wait,要求埠在指定時間超時後才能再連線,避免後續的socket把先前尚未傳送過來的包當做正常訊息接受

可設定如下屬性:sock.setsockopt(socket.sol_socket, socket.so_reuseaddr, 1),這個要在繫結前呼叫,並且需要保證前次的bind相關的fd都close,否則會無效

網路程式設計 TCP有關函式

1 socket函式 原型 int socket int family,int type,int protocol 作用 建立一下新的socket套接字 型別 sock stream 用於tcp sock dgram 用於udp protocol 傳輸協議編號,設為0即可 返回值 成功返回socke...

有關網路程式設計的一些面試

1,首先說明socket是什麼?我們知道 資訊的互動需要涉及到tcp的四層模型 socket 可以看作使用者程序和核心網路協議棧程式設計 互動 介面 socket 不僅可以在同一臺主機上進行通訊,也可以在網路上不同的主機間進行通訊,也可以異構 軟硬體平台不同 進行通訊 手機qq和pc機上的qq進行通...

USB有關的程式設計

作者的自我介紹 vc的愛好者。開發環境 vc6 windowsxp ddk 測試環境 windowsxp 使用許可 是免費使用 講解 功能介紹 現在usb裝置卻很多,因此對usb裝置的查詢與讀寫就必不可少了。但是能找到關於usb讀寫的資料很少。這裡使用vc 示範了一些獲得usb的資訊的方法。一 列舉...