nl::Weave::Encoding::BigEndian

เนมสเปซนี้มีฟังก์ชันสำหรับรายการต่อไปนี้

สรุป

  • เรียงลำดับไบต์ใหม่โดยสัมพันธ์กับระบบโฮสต์ตามค่าอันดับของบิ๊กเอนด์เดียนสำหรับประเภท 16, 32 และ 64 บิต
  • การเข้าถึงที่ทำแมปกับหน่วยความจำที่เรียบง่ายและมีประสิทธิภาพ อาจอยู่ในตำแหน่งหน่วยความจำที่ไม่ตรงตำแหน่ง และมีหรือไม่มีการจัดเรียงไบต์ใหม่ ไปจนถึงจำนวนที่เรียงลำดับแบบบิ๊กเอนเดียนไบต์ 8, 16, 32 และ 64 บิต ทั้งกรณีที่มีและไม่มีการจัดการเคอร์เซอร์

ในระบบโฮสต์ Big Endian จะไม่มีการเรียงลำดับไบต์ใหม่ตามจริง สำหรับระบบอื่น การจัดเรียงไบต์ใหม่จะมีรูปแบบตามความเหมาะสม

ฟังก์ชัน

Get16(const uint8_t *p)
uint16_t
อ่านค่าหน่วยความจำสำหรับค่า 16 บิตที่เรียงลำดับแบบ Big Endian ไบต์ที่ไม่ตรงตำแหน่งจากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย
Get32(const uint8_t *p)
uint32_t
อ่านค่าหน่วยความจำแบบบิ๊กเอนเดียนที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย
Get64(const uint8_t *p)
uint64_t
อ่านค่าหน่วยความจำแบบบิ๊กเอนด์เดียนที่มีลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ อาจไม่ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย
HostSwap16(uint16_t v)
uint16_t
การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 16 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์บิกเอนเดียนไปยังระบบเป้าหมาย (เช่น
HostSwap32(uint32_t v)
uint32_t
การดำเนินการนี้จะดำเนินการอย่างมีเงื่อนไขเท่าที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 32 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์บิกเอนด์ไปยังระบบเป้าหมาย (เช่น
HostSwap64(uint64_t v)
uint64_t
การดำเนินการนี้จะดำเนินการอย่างมีเงื่อนไขตามความจำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 64 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์บิกเอนเดียนไปยังระบบเป้าหมาย (เช่น
Put16(uint8_t *p, uint16_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว และเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน
Put32(uint8_t *p, uint32_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน
Put64(uint8_t *p, uint64_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนวและเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนด์เดียน
Read16(uint8_t *& p)
uint16_t
อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 16 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 16 บิต (2 ไบต์)
Read16(const uint8_t *& p)
uint16_t
อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 16 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 16 บิต (2 ไบต์)
Read32(uint8_t *& p)
uint32_t
อ่านค่าหน่วยความจำแบบบิ๊กเอนด์เดียนที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)
Read32(const uint8_t *& p)
uint32_t
อ่านค่าหน่วยความจำแบบบิ๊กเอนด์เดียนที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)
Read64(uint8_t *& p)
uint64_t
อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 64 บิต (8 ไบต์)
Read64(const uint8_t *& p)
uint64_t
อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 64 บิต (8 ไบต์)
Write16(uint8_t *& p, uint16_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว และเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน
Write32(uint8_t *& p, uint32_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน
Write64(uint8_t *& p, uint64_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนวและเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนด์เดียน

ฟังก์ชัน

Get16

uint16_t Get16(
  const uint8_t *p
)

อ่านค่าหน่วยความจำสำหรับค่า 16 บิตที่เรียงลำดับแบบ Big Endian ไบต์ที่ไม่ตรงตำแหน่งจากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ (อาจไม่อยู่ในแนวเดียวกัน) สำหรับการอ่านค่าที่มีลำดับของ Big Endian Byte 16 บิต
การคืนสินค้า
เรียงลำดับไบต์ค่า 16 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Get32

uint32_t Get32(
  const uint8_t *p
)

อ่านค่าหน่วยความจำแบบบิ๊กเอนเดียนที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ (อาจไม่อยู่ในแนวเดียวกัน) สำหรับการอ่านค่าที่มีลำดับของ Big Endian Byte 32 บิต
การคืนสินค้า
เรียงลำดับไบต์ค่า 32 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Get64

uint64_t Get64(
  const uint8_t *p
)

อ่านค่าหน่วยความจำแบบบิ๊กเอนด์เดียนที่มีลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ อาจไม่ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ (อาจไม่อยู่ในแนวเดียวกัน) เพื่ออ่านค่าที่มีลำดับของ Big Endian Byte 64 บิต
การคืนสินค้า
หากจำเป็น ระบบจะเรียงลำดับค่า 64 บิตในที่อยู่ของตัวชี้ที่ระบุใหม่

HostSwap16

uint16_t HostSwap16(
  uint16_t v
)

การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 16 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์บิกเอนเดียนไปยังระบบเป้าหมาย (เช่น

โฮสต์) การจัดลำดับไบต์

ดังนั้น ในระบบเป้าหมายบิตเอนเดียน สิ่งนี้จะเป็นการดำเนินการที่ไม่เกี่ยวข้องกับระบบเป้าหมายขนาดใหญ่ โดยจะจัดเรียงใหม่

รายละเอียด
พารามิเตอร์
[in] v
ค่า 16 บิตที่จะสลับลำดับไบต์
การคืนสินค้า
สลับลำดับไบต์ของค่าอินพุต (หากจำเป็น)

HostSwap32

uint32_t HostSwap32(
  uint32_t v
)

การดำเนินการนี้จะดำเนินการอย่างมีเงื่อนไขเท่าที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 32 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์บิกเอนด์ไปยังระบบเป้าหมาย (เช่น

โฮสต์) การจัดลำดับไบต์

ดังนั้น ในระบบเป้าหมายบิตเอนเดียน สิ่งนี้จะเป็นการดำเนินการที่ไม่เกี่ยวข้องกับระบบเป้าหมายขนาดใหญ่ โดยจะจัดเรียงใหม่

รายละเอียด
พารามิเตอร์
[in] v
ค่า 32 บิตที่จะสลับลำดับไบต์
การคืนสินค้า
สลับลำดับไบต์ของค่าอินพุต (หากจำเป็น)

HostSwap64

uint64_t HostSwap64(
  uint64_t v
)

การดำเนินการนี้จะดำเนินการอย่างมีเงื่อนไขตามความจำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 64 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์บิกเอนเดียนไปยังระบบเป้าหมาย (เช่น

โฮสต์) การจัดลำดับไบต์

ดังนั้น ในระบบเป้าหมายบิตเอนเดียน สิ่งนี้จะเป็นการดำเนินการที่ไม่เกี่ยวข้องกับระบบเป้าหมายขนาดใหญ่ โดยจะจัดเรียงใหม่

รายละเอียด
พารามิเตอร์
[in] v
ค่า 64 บิตที่จะสลับลำดับไบต์
การคืนสินค้า
สลับลำดับไบต์ของค่าอินพุต (หากจำเป็น)

Put16

void Put16(
  uint8_t *p,
  uint16_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว และเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ (อาจไม่อยู่ในแนวเดียวกัน) สำหรับเขียนไบต์ข้อมูลของระบบเป้าหมายที่มีลำดับค่า 16 บิตในลำดับบิ๊กเอนด์เดียน
[in] v
ค่า 16 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Put32

void Put32(
  uint8_t *p,
  uint32_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ (อาจไม่ตรงตำแหน่ง) สำหรับเขียนไบต์ข้อมูลของระบบเป้าหมายที่มีลำดับค่า 32 บิตเพื่อเรียงลำดับไบต์บิกเอนด์
[in] v
ค่า 32 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Put64

void Put64(
  uint8_t *p,
  uint64_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนวและเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนด์เดียน

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ (อาจไม่ตรงแนว) สำหรับเขียนไบต์ข้อมูลของระบบเป้าหมายที่มีลำดับค่า 64 บิตในการจัดลำดับบิ๊กเอนด์เดียน
[in] v
ค่า 64 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Read16

uint16_t Read16(
  uint8_t *& p
)

อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 16 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 16 บิต (2 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ของตัวชี้ (อาจไม่อยู่ในแนวเดียวกัน) ในการอ่านค่าที่มีการจัดลำดับบิ๊กเอนด์เดียน 16 บิตจากและต่อจากนั้นเพิ่มทีละ 16 บิต (2 ไบต์)
การคืนสินค้า
สลับลำดับไบต์ด้วยค่า 16 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Read16

uint16_t Read16(
  const uint8_t *& p
)

อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 16 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 16 บิต (2 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ตัวชี้คงที่ (อาจไม่อยู่ในแนวเดียวกัน) ในการอ่านค่าเรียงลำดับแบบบิ๊กเอนด์เดียน 16 บิตจากแล้วไปเพิ่มทีละ 16 บิต (2 ไบต์)
การคืนสินค้า
สลับลำดับไบต์ด้วยค่า 16 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Read32

uint32_t Read32(
  uint8_t *& p
)

อ่านค่าหน่วยความจำแบบบิ๊กเอนด์เดียนที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ของตัวชี้ (อาจไม่อยู่ในแนวเดียวกัน) ในการอ่านค่าเรียงลำดับแบบบิ๊กเอนด์เดียน 32 บิตจากและต่อจากนั้นเพิ่มขึ้น 32 บิต (4 ไบต์)
การคืนสินค้า
สลับลำดับไบต์ด้วยค่า 32 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Read32

uint32_t Read32(
  const uint8_t *& p
)

อ่านค่าหน่วยความจำแบบบิ๊กเอนด์เดียนที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ตัวชี้คงที่ (อาจไม่อยู่ในแนวเดียวกัน) เพื่ออ่านค่าอันดับของบิ๊กเอนด์เดียน 32 บิต จากแล้วไปเพิ่มทีละ 32 บิต (4 ไบต์)
การคืนสินค้า
สลับลำดับไบต์ด้วยค่า 32 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Read64

uint64_t Read64(
  uint8_t *& p
)

อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 64 บิต (8 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ของตัวชี้ (อาจไม่ตรงแนว) ในการอ่านค่าที่มีลำดับของบิ๊กเอนด์เดียน 64 บิตจากและต่อจากนั้นเพิ่มทีละ 64 บิต (8 ไบต์)
การคืนสินค้า
หากจำเป็น ค่า 64 บิตในที่อยู่ของตัวชี้ที่ระบุ จะมีการสลับลำดับไบต์

Read64

uint64_t Read64(
  const uint8_t *& p
)

อ่านค่าหน่วยความจำแบบ Big Endian Byte ที่เรียงลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายวางค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ครั้งละ 64 บิต (8 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ของตัวชี้ที่คงที่ (อาจไม่อยู่ในแนวเดียวกัน) ในการอ่านค่าที่มีการจัดลำดับไบต์บิกเอนเดียน 64 บิต จากแล้วไปเพิ่มทีละ 64 บิต (8 ไบต์)
การคืนสินค้า
หากจำเป็น ค่า 64 บิตในที่อยู่ของตัวชี้ที่ระบุ จะมีการสลับลำดับไบต์

Write16

void Write16(
  uint8_t *& p,
  uint16_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว และเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน

รายละเอียด
พารามิเตอร์
[in] p
การอ้างอิงไปยังที่อยู่ตัวชี้ (อาจไม่ตรงแนว) เพื่อเขียนค่าไบต์ระบบเป้าหมายที่มีลำดับ 16 บิตโดยเรียงลำดับบิกเอนเดียนไบต์ จากนั้นจึงเพิ่มทีละ 16 บิต (2 ไบต์)
[in] v
ค่า 16 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Write32

void Write32(
  uint8_t *& p,
  uint32_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนเดียน

รายละเอียด
พารามิเตอร์
[in] p
การอ้างอิงไปยังที่อยู่ตัวชี้ (อาจไม่ตรงแนว) เพื่อเขียนค่าไบต์ระบบเป้าหมายที่มีลำดับ 32 บิตโดยเรียงลำดับบิ๊กเอนด์เดียนไบต์ จากนั้นเพิ่มทีละ 32 บิต (4 ไบต์)
[in] v
ค่า 32 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Write64

void Write64(
  uint8_t *& p,
  uint64_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่มีลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนวและเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับบิ๊กเอนด์เดียน

รายละเอียด
พารามิเตอร์
[in] p
การอ้างอิงไปยังที่อยู่ตัวชี้ (อาจไม่ตรงแนว) เพื่อเขียนค่าไบต์ระบบเป้าหมายที่มีลำดับ 64 บิตโดยเรียงลำดับบิ๊กเอนด์เดียนไบต์ จากนั้นเพิ่มทีละ 64 บิต (8 ไบต์)
[in] v
ค่า 64 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)