tail head cat sleep
QR code linking to this page

manページ  — BYTEORDER

名称

bswap16, be16toh, htole16, be16enc, le16enc – バイトオーダの操作

内容

書式

#include <sys/endian.h>

uint16_t
bswap16(uint16_t int16);

uint32_t
bswap32(uint32_t int32);

uint64_t
bswap64(uint64_t int64);

uint16_t
be16toh(uint16_t big16);

uint32_t
be32toh(uint32_t big32);

uint64_t
be64toh(uint64_t big64);

uint16_t
htobe16(uint16_t host16);

uint32_t
htobe32(uint32_t host32);

uint64_t
htobe64(uint64_t host64);

uint16_t
htole16(uint16_t host16);

uint32_t
htole32(uint32_t host32);

uint64_t
htole64(uint64_t host64);

uint16_t
le16toh(uint16_t little16);

uint32_t
le32toh(uint32_t little32);

uint64_t
le64toh(uint64_t little64);

uint16_t
be16dec(const void *);

uint32_t
be32dec(const void *);

uint64_t
be64dec(const void *);

uint16_t
le16dec(const void *);

uint32_t
le32dec(const void *);

uint64_t
le64dec(const void *);

void
be16enc(void *, uint16_t);

void
be32enc(void *, uint32_t);

void
be64enc(void *, uint64_t);

void
le16enc(void *, uint16_t);

void
le32enc(void *, uint32_t);

void
le64enc(void *, uint64_t);

解説

bswap16(), bswap32() および bswap64() 関数はバイトオーダが交換された整数を返します。 ビッグエンディアンのシステム上では、 その数値はリトルエンディアンのバイトオーダに変換されます。 リトルエンディアンのシステム上では、 その数値はビッグエンディアンのバイトオーダに変換されます。

be16toh(), be32toh() および be64toh() 関数はビッグエンディアンのバイトオーダの整数をシステムのネイティブな バイトオーダに変換して返します。 ビッグエンディアンのシステム上では、戻り値は引数と同じになります。

le16toh(), le32toh() および le64toh() 関数はリトルエンディアンのバイトオーダの整数をシステムのネイティブな バイトオーダに変換して返します。 リトルエンディアンのシステム上では、戻り値は引数と同じになります。

htobe16(), htobe32() および htobe64() 関数はシステムのネイティブなバイトオーダの整数をビッグエンディアンの バイトオーダに変換して返します。 ビッグエンディアンのシステム上では、戻り値は引数と同じになります。

htole16(), htole32() および htole64() 関数はシステムのネイティブなバイトオーダの整数をリトルエンディアンの バイトオーダに変換して返します。 リトルエンディアンのシステム上では、戻り値は引数と同じになります。

be16enc(), be16dec(), be32enc(), be32dec(), be64enc(), be64dec(), le16enc(), le16dec(), le32enc(), le32dec(), le64enc(), および le64dec() 関数はビッグ/リトルエンディアンのあらゆるアライメントの、 整数からバイトストリングへエンコードおよび バイトコードから整数へデコードを行います。

関連項目

byteorder(3)

歴史

hto*() および *toh() 関数は FreeBSD 5.0 ではじめて登場し、元々は NetBSD プロジェクトによって開発されていました。

エンコード/デコード関数は FreeBSD 5.1 ではじめて登場しました。


BYTEORDER (9) April 29, 2002

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

What will happen when the 32-bit Unix date goes negative in mid-January 2038 does not bear thinking about.
— Henry Spencer