共用方式為


SOCKADDR_INET union (ws2ipdef.h)

SOCKADDR_INET聯集包含 IPv4、IPv6 位址或位址系列。

語法

typedef union _SOCKADDR_INET {
  SOCKADDR_IN    Ipv4;
  SOCKADDR_IN6   Ipv6;
  ADDRESS_FAMILY si_family;
} SOCKADDR_INET, *PSOCKADDR_INET;

成員

Ipv4

類型: SOCKADDR_IN

SOCKADDR_IN 結構表示的 IPv4 位址,其中包含位址系列和 IPv4 位址。 位址系列依主機位元組順序排列,而IPv4位址會依網路位元組順序排列。

在 Windows Vista 和更新版本的發行 Windows SDK 上,頭檔的組織已變更,且SOCKADDR_IN結構定義於 Ws2def.h 頭檔中。 請注意, Ws2def.h 頭文件會自動包含在 Winsock2.h 中,不應該直接使用。

Ipv6

類型: SOCKADDR_IN6

SOCKADDR_IN6 結構表示的 IPv6 位址,其中包含位址系列和 IPv6 位址。 位址系列依主機位元組順序排列,而IPv6位址會依網路位元組順序排列。

在 Windows Vista 和更新版本的發行 Windows SDK 上,頭檔的組織已變更,且SOCKADDR_IN6結構定義於 Ws2def.h 頭檔中。 請注意, Ws2def.h 頭文件會自動包含在 Winsock2.h 中,不應該直接使用。

si_family

類型: ADDRESS_FAMILY

位址系列。

位址系列的可能值會列在 Ws2def.h 頭檔中。 請注意,AF_位址系列和PF_通訊協定系列常數的值 (相同,例如, AF_INETPF_INET) ,因此可以使用任一個常數。 Ws2def.h 頭文件會自動包含在 Winsock2.h 中,不應該直接使用。

目前支援的值是 AF_INETAF_INET6AF_UNSPEC

意義
AF_UNSPEC
0
未指定位址系列。 指定此參數時, SOCKADDR_INET 聯集可以代表 IPv4 或 IPv6 位址系列。
AF_INET
2
因特網通訊協定第 4 版 (IPv4) 位址系列。
AF_INET6
23
因特網通訊協定第 6 版 (IPv6) 位址系列。

備註

SOCKADDR_INET聯集是在 Windows Vista 和更新版本上定義。

SOCKADDR_INET聯集是方便存取 IPv4 位址、IPv6 位址或 IP 位址系列,而不需要轉換 sockaddr 結構。

SOCKADDR_INET聯集是 IP_ADDRESS_PREFIX 結構中 Prefix 成員的數據類型

請注意, Ws2ipdef.h 頭文件會自動包含在 Ws2tcpip.h 頭檔中,而且絕對不應該直接使用。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
標頭 ws2ipdef.h (包含 Ws2tcpip.h)

另請參閱

IP_ADDRESS_PREFIX

sockaddr