EN JA
BYTEORDER(3)
BYTEORDER(3) FreeBSD Library Functions Manual BYTEORDER(3)

名称

htonl, htons, ntohl, ntohsホストとネットワークのバイト順の値を変換する

ライブラリ

Standard C Library (libc, -lc)

書式

#include < arpa/inet.h>

または


#include < netinet/in.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);

解説

これらのルーチンは、16 ビットと 32 ビットの単位でネットワークのバイト順とホストのバイト順の間で変換します。ネットワーク順と同じバイト順のマシンにおいては、ルーチンは、空のマクロとして定義されます。

これらのルーチンは、 gethostbyname(3)getservent(3) によって返されるインターネットアドレスとポートと共に最もよく使用されます。

規格

byteorder 関数は、 IEEE Std 1003.1-2001 (“POSIX.1”) に適合しています。

歴史

byteorder 関数は、 4.2BSD で登場しました。

バグ

VAX において、バイトは、世界中とはほとんと別の逆の方向に操作されます。これは、いずれ近いうちに直されるとは予想されません。
March 20, 2005 FreeBSD