Sobes.tech
Junior — Middle

Como inserir um valor do tipo int32 numa matriz de bytes com comprimento 4?

sobes.tech IA

Resposta da IA

Em Go, para converter um valor do tipo int32 para um array de bytes de comprimento 4, geralmente usa-se o pacote encoding/binary. Este permite controlar a ordem dos bytes (big-endian ou little-endian). Por exemplo:

package main

import (
    "encoding/binary"
    "fmt"
)

func main() {
    var num int32 = 16909060 // número de exemplo
    bytes := make([]byte, 4)
    binary.BigEndian.PutUint32(bytes, uint32(num))
    fmt.Println(bytes) // [1 2 3 4]
}

Aqui, binary.BigEndian.PutUint32 escreve os 4 bytes do número na fatia bytes na ordem do byte mais significativo primeiro. Pode-se usar binary.LittleEndian para a ordem inversa.