Scroll to navigation

BYTEORDER(3) Руководство программиста Linux BYTEORDER(3)

ИМЯ

htonl, htons, ntohl, ntohs - переводят данные из узлового порядка расположения байтов в сетевой и наоборот

ОБЗОР

#include <arpa/inet.h>

uint32_t htonl(uint32_t hostlong);

uint16_t htons(uint16_t hostshort);

uint32_t ntohl(uint32_t netlong);

uint16_t ntohs(uint16_t netshort);

ОПИСАНИЕ

Функция htonl() преобразует значение беззнакового целого hostlong из узлового порядка расположения байтов в сетевой порядок расположения байтов.

Функция htons() преобразует значение короткого беззнакового целого hostshort из узлового порядка расположения байтов в сетевой порядок расположения байтов.

Функция ntohl() преобразует значение беззнакового целого netlong из сетевого порядка расположения байтов в узловой порядок расположения байтов.

Функция ntohs() преобразует значение короткого беззнакового целого netshort из сетевого порядка расположения байтов в узловой порядок расположения байтов.

В архитектуре i386 используется узловой порядок расположения байтов — последний значимый байт стоит в начале числа (Least Significant Byte), в то время как сетевым порядком байт, используемым в интернет, считается Most Significant Byte (в начале числа стоит последний значимый байт).

СООТВЕТСТВИЕ СТАНДАРТАМ

POSIX.1-2001.

В некоторых ОС требуется включать <netinet/in.h> вместо <arpa/inet.h>.

СМОТРИТЕ ТАКЖЕ

endian(3), gethostbyname(3), getservent(3)

2009-01-15 GNU