nl::Weave::Encoding::LittleEndian

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

สรุป

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

ในระบบโฮสต์ Endian ขนาดเล็กจะไม่มีการจัดลําดับไบต์ใหม่เกิดขึ้น ระบบอื่นๆ จะมีการจัดลําดับไบต์ใหม่ตามความเหมาะสม

ฟังก์ชัน

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

ฟังก์ชัน

Get16

uint16_t Get16(
  const uint8_t *p
)

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

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

Get32

uint32_t Get32(
  const uint8_t *p
)

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

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

Get64

uint64_t Get64(
  const uint8_t *p
)

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

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ตัวชี้ ซึ่งอาจไม่สอดคล้องกัน เพื่ออ่านค่าจากอันดับไบต์ของปลายทางขนาดเล็ก 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
)

การดำเนินการนี้แบบมีเงื่อนไขจะดำเนินการสลับลำดับไบต์ตามค่าของระบบเป้าหมายตามที่จำเป็นสำหรับระบบเป้าหมาย โดยถือว่ามีการเรียงลำดับไบต์เอนเดียนเล็กน้อยไปยังระบบเป้าหมาย (นั่นคือ

(โฮสต์) ไบต์ตามลำดับ

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

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

Put16

void Put16(
  uint8_t *p,
  uint16_t v
)

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

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

Put32

void Put32(
  uint8_t *p,
  uint32_t v
)

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

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

Put64

void Put64(
  uint8_t *p,
  uint64_t v
)

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

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

Read16

uint16_t Read16(
  uint8_t *& p
)

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

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

Read16

uint16_t Read16(
  const uint8_t *& p
)

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

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

Read32

uint32_t Read32(
  uint8_t *& p
)

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

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

Read32

uint32_t Read32(
  const uint8_t *& p
)

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

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

Read64

uint64_t Read64(
  uint8_t *& p
)

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

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

Read64

uint64_t Read64(
  const uint8_t *& p
)

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

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

Write16

void Write16(
  uint8_t *& p,
  uint16_t v
)

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

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

Write32

void Write32(
  uint8_t *& p,
  uint32_t v
)

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

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

Write64

void Write64(
  uint8_t *& p,
  uint64_t v
)

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

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