ios中和socket相關的結構體

2021-07-26 20:39:37 字數 1421 閱讀 4457

ipv6協議的位址長度是128位,全部可分配位址數為2的128次方(2^128)個,不再存在位址匱乏問題。同時,ipv6位址表示方式和ipv4也不同:ipv4位址表示為點分十進位制格式,32位的位址分成4個8位分組,每個8位以十進位制數顯式,中間用點號分隔。而ipv6採用的是十六進製制格式,既128位位址是以16位為一分組,每個16位分組寫成4個十六進製制數,中間用冒號分十六進製制格式。

/** [xsi] structure used by kernel to store most addresses.一般程式設計中並不直接針對此資料結構操作,而是使用另乙個與sockaddr等價的資料結構:sockaddr_in,所以要求這兩個結構在記憶體中大小一致

*/struct sockaddr ;

/** socket address for ipv4, internet style.

*/struct sockaddr_in ;

/** socket address for ipv6

*/#if !defined(_posix_c_source) || defined(_darwin_c_source)

#define    sin6_len

#endif /* (_posix_c_source && !_darwin_c_source) */

struct sockaddr_in6 ;

/** ipv6 address

*/struct in6_addr __u6_addr;            /* 128-bit ip6 address */

};/*

* ipv4 internet address (a structure for historical reasons)

*/struct in_addr ;

struct addrinfo ;

int getaddrinfo( const char *hostname, const char *service, const struct addrinfo *hints, struct addrinfo **result );

引數說明

hostname:乙個主機名或者位址串(ipv4的點分十進位制串或者ipv6的16進製制串)

service:服務名可以是十進位制的埠號,也可以是已定義的服務名稱,如ftp、http等

hints:可以是乙個空指標,也可以是乙個指向某個addrinfo結構體的指標,呼叫者在這個結構中填入關於期望返回的資訊型別的暗示。舉例來說:指定的服務支援tcp,所以呼叫者可以把hints結構中的ai_socktype成員設定成sock_stream使得返回的僅僅是適用於資料流套介面的資訊。

result:本函式通過result指標引數返回乙個指向addrinfo結構體鍊錶的指標。

host byte order 0x0010,十進位制為16

network byte order 0x1000,十進位制為4096

Processing中和值域相關的函式

今天在群裡有人問了個問題 請教下啊,群裡能有高手講講norm lerp map 麼,英文的實在是沒看懂呀?鑑於很多人初學processing都沒弄明白這3個函式的用法,我這裡簡單介紹一下。首先,這三個函式都是和值域處理有關的。什麼是值域呢,簡單的說,有上下限 有最大值和最小值的乙個數值範圍就是值域,...

使用ios自帶的socket

ios自帶乙個小的cfsocket庫,可以解決簡單的socket連線需求 void connect socket cfsocketcreate kcfallocatordefault,pf inet,sock stream,ipproto tcp,kcfsocketconnectcallback,型...

iOS的Socket程式設計體驗

網路中各結點都有相同的層次,網路中各結點都有相同的層次,不同結點相同層次具有相同的功能 同一結點相鄰層間通過介面通訊 每一層都可以使用下層提供的服務,並向上層提供服務 不同結點的同等層間通過協議來實現對等層間的通訊 1.物理層 主要定義物理裝置標準,如網線的介面型別 各種傳輸介質的傳輸速率等。主要作...