RtlIpv6AddressToStringA 函式 (ip2string.h)
RtlIpv6AddressToString 函式會以因特網標準格式將 IPv6 位址轉換為字串。
語法
NTSYSAPI PSTR RtlIpv6AddressToStringA(
[in] const in6_addr *Addr,
[out] PSTR S
);
參數
[in] Addr
以網路位元組順序排列的IPv6位址。
[out] S
緩衝區的指標,用來儲存 IPv6 位址的 NULL 終止字串表示。 此緩衝區的大小應該足以容納至少 46 個字元。
傳回值
插入 IPv6 位址字串表示結尾之 NULL 字元的指標。 呼叫端可以使用此選項,輕鬆地將更多資訊附加至字串。
備註
RtlIpv6AddressToString 函式可用來將 IPv6 位址轉換成以因特網標準格式表示 IPv6 位址的字串表示。
基本字串表示是由 8 個十六進位數位所組成,並以冒號分隔。 連續零數位的字串會取代為雙冒號。 IPv6 位址的字串表示中只能有一個雙冒號。 如果位址是 IPv4 相容位址、IPv4 對應 IPv6 位址或 ISATAP 位址,則最後 32 位會以 IPv4 樣式的 dotted-octet 表示法表示。 如需詳細資訊,請參閱 IETF 所發佈的 RFC 5942 第 5 節。
RtlIpv6AddressToString 是一個便利函式,不需要載入 Windows Sockets DLL 才能存取 Windows Sockets 中提供的函式,以執行 IP 位址到字符串轉換。
定義 UNICODE 或_UNICODE時, 會將 RtlIpv6AddressToString 定義為 RtlIpv6AddressToStringW,這是此函式的 Unicode 版本。 字串參數 S 和函式傳回值會定義至 PWSTR 資料類型。
未定義 UNICODE 和_UNICODE時, 會將 RtlIpv6AddressToString 定義為 RtlIpv6AddressToStringA,這是此函式的 ANSI 版本。 字串參數 S 和函式傳回值會定義至 PSTR 數據類型。
IN6_ADDR 結構定義於 In6addr.h 頭檔中。
包含 RtlIpv6AddressToString 函式的匯入連結庫不包含在針對 Windows Vista 發行的 Microsoft Windows 軟體開發工具包 (SDK) 中。 RtlIpv6AddressToString 函式包含在 Windows 驅動程式套件 (WDK) 隨附的 Ntdll.lib 匯入連結庫中。 應用程式也可以使用 GetModuleHandle 和 GetProcAddress 函式,從 Ntdll.dll 擷取函式指標,並呼叫此函式。
注意
ip2string.h 標頭會根據 UNICODE 預處理器常數的定義,將 RtlIpv6AddressToString 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | ip2string.h (包含 Mstcpip.h、Ip2string.h) |
程式庫 | ntdll.lib |
Dll | ntdll.dll |