Функция WSANtohl (winsock2.h)

Функция WSANtohl преобразует u_long из сетевого порядка байтов в порядок байтов узла.

Синтаксис

int WSAAPI WSANtohl(
  [in]  SOCKET s,
  [in]  u_long netlong,
  [out] u_long *lphostlong
);

Параметры

[in] s

Дескриптор, определяющий сокет.

[in] netlong

32-разрядное число в сетевом порядке байтов.

[out] lphostlong

Указатель на 32-разрядное число для получения числа в порядке байтов узла.

Возвращаемое значение

Если ошибка не возникает, WSANtohl возвращает ноль. В противном случае возвращается значение SOCKET_ERROR, а определенный код ошибки можно получить, вызвав WSAGetLastError.

Код ошибки Значение
WSANOTINITIALISED
Перед использованием этой функции должен быть выполнен успешный вызов WSAStartup .
WSAENETDOWN
Произошел сбой сетевой подсистемы.
WSAENOTSOCK
Дескриптор не является сокетом.
WSAEFAULT
Параметр lphostlong имеет значение NULL или адрес, на который указывает, не полностью содержится в допустимой части адресного пространства пользователя.

Комментарии

Функция WSANtohl принимает 32-разрядное число в сетевом порядке байтов и возвращает 32-разрядное число в порядке байтов узла в 32-разрядном числе, на которое указывает параметр lphostlong . Сокет, передаваемый в параметре s , используется для определения порядка сетевых байтов на основе записи протокола каталога Winsock, связанной с сокетом. Эта функция поддерживает поставщиков Winsock, которые используют разные сетевые заказы байтов.

Если сокет предназначен для семейства AF_INET или AF_INET6 адресов, функция WSANtohl может использоваться для преобразования IPv4-адреса в порядке байтов сети в IPv4-адрес в порядке байтов узла. Эта функция не проверяет, является ли параметр netlong допустимым IPv4-адресом.

Функция WSANtohl требует, чтобы библиотека DLL Winsock ранее была загружена с успешным вызовом функции WSAStartup . Для использования с семейством AF_INET или AF_INET6 функция ntohl не требует загрузки библиотеки DLL Winsock.

Windows Phone 8. Эта функция поддерживается для приложений Магазина Windows Phone Windows Phone 8 и более поздних версий.

Windows 8.1 и Windows Server 2012 R2: эта функция поддерживается для приложений Магазина Windows на Windows 8.1, Windows Server 2012 R2 и более поздних версий.

Требования

   
Минимальная версия клиента Windows 8.1, Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header winsock2.h
Библиотека Ws2_32.lib
DLL Ws2_32.dll

См. также раздел

InetNtop

WSAHtonl

WSAHtons

WSANtohs

Функции Winsock

Справочник по Winsock

htonl

htons

inet_addr

inet_ntoa

ntohl

ntohs