Endianness и бинарные протоколы в Go.

Ответ

Порядок байт: little-endian (младший байт по младшему адресу, x86) и big-endian (сетевой порядок). В Go encoding/binary: binary.BigEndian.PutUint32, binary.LittleEndian.Uint32; при чтении из сети обычно big-endian. Пакет binary.Read/binary.Write с порядком. Важно при реализации бинарных протоколов и чтении форматов файлов.

var val uint32
binary.Read(r, binary.BigEndian, &val)
buf := make([]byte, 4)
binary.BigEndian.PutUint32(buf, val)
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.