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() 関数は unsigned integer
hostlong
を
ホストバイトオーダーからネットワークバイトオーダーに変換する。
htons() 関数は unsigned short integer
hostshort
を
ホストバイトオーダーからネットワークバイトオーダーに変換する。
ntohl() 関数は unsigned integer
netlong を
ネットワークバイトオーダーからホストバイトオーダーに変換する。
ntohs() 関数は unsigned short integer
netshort
を
ネットワークバイトオーダーからホストバイトオーダーに変換する。
i80x86
のホストバイトオーダーでは最下位バイトが若いアドレスに配置されるが、
インターネットで用いられるネットワークバイトオーダーでは最上位バイト
が先に配置される。
この節で使用されている用語の説明は
attributes(7) を参照のこと。
Interface |
Attribute |
Value |
htonl(), htons(), ntohl(), ntohs() |
Thread safety |
MT-Safe |
POSIX.1-2001, POSIX.1-2008.
いくつかのシステムでは、
<arpa/inet.h> の代わりに
<netinet/in.h>
をインクルードする必要がある。
bswap(3),
endian(3),
gethostbyname(3),
getservent(3)
この man ページは Linux
man-pages
プロジェクトのリリース
5.10
の一部である。プロジェクトの説明とバグ報告に関する情報は
https://www.kernel.org/doc/man-pages/
に書かれている。