BYTEORDER(3)

名称
htonl, htons, ntohl, ntohs - ホストバイトオーダとネットワークバイトオーダを変換する

ライブラリ
libc

書式
<sys/param.h> u_long htonl(u_long hostlong) u_short htons(u_short hostshort) u_long ntohl(u_long netlong) u_short ntohs(u_short netshort)

解説
これらのルーチンは、16 ビットと 32 ビットの値を、 ネットワークバイトオーダとホストバイトオーダの間で変換します。 ネットワークのオーダと同じバイトオーダのマシンでは、 ルーチンはヌルマクロとして定義されます。

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

関連項目
gethostbyname(3), getservent(3)

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

バグ
VAX は、世界中の他のほとんどすべてのマシンとは逆順にバイトを処理します。 この問題は、当分解決の見込みはありません。