《UNIX 網路程式設計》 第三章課後習題第三題

2021-06-04 01:17:12 字數 668 閱讀 4042

按自己的想法實現的,肯定有更好的實現方式,放在這裡留個紀念。

/**

從下面開始

**/#include #include #include #include #include #include /**

具體的轉換過程,不做詳細注釋,有更好的實現方式

**/

intinet_pton_loose(int family,const char *strptr,void *addrptr)

if(family == af_inet6)

memcpy(addrptr,(void *)&v6addr,sizeof(struct in6_addr));

return 1;

} } return 0;

} return 1;

}/**

獲取輸入,辨別是ipv4 還是ipv6 並做相應的處,理完成後輸出使用者的輸入。沒有新增錯誤處理。

**/int

main(int argc,char **argv)

}if(strcmp(addrflag6,argv[1]) == 0)

} return 1;

}

《UNIX 網路程式設計》 第三章課後習題第三題

試寫乙個名為inet pton loose的函式,它能處理如下情形 如果位址族為af inet且inet pton返回0,那就呼叫inet aton看是否成功 類似地,如果位址族為af inet6且inet pton返回0,那麼就呼叫inet aton看是否成功,若成功返回其ipv4對映的ipv6位...

unix 網路程式設計 第三章

包裹函式 就是對有錯誤返回值的函式的封裝。在unix網路程式設計中用大寫表示。err sys 必須要errno 的值才能輸出錯誤?執行緒函式遇到錯誤的時候 不設定errno的值,而是把error的值作為函式的返回值。必須檢查某個確定的錯誤,並處理它,而不是終止程序執行。unix errno 值 每當...

UNIX環境高階程式設計習題 第三章

3.1 當讀 寫磁碟檔案時,本章中描述的函式確實是不帶緩衝機制的嗎?請說明原因 1 本章中描述的read和write函式都是系統呼叫,這兩個函式都是在核心中進行的,所以是不帶緩衝的i o函式。而帶有緩衝機制的函式是以記憶體空間作為緩衝區,避免不當操作降低多寫效能。3.2 編寫乙個與3.12節中dup...