Sobes.tech
Junior — Middle

Hogyan lehet egy int32 típusú értéket beszúrni egy 4 hosszú bájt tömbbe?

sobes.tech MI

Válasz az MI-től

Go nyelven az int32 típusú érték 4 bájtos tömbbé alakításához általában az encoding/binary csomagot használják. Ez lehetővé teszi a bájtok sorrendjének (big-endian vagy little-endian) irányítását. Például:

package main

import (
    "encoding/binary"
    "fmt"
)

func main() {
    var num int32 = 16909060 // példa szám
    bytes := make([]byte, 4)
    binary.BigEndian.PutUint32(bytes, uint32(num))
    fmt.Println(bytes) // [1 2 3 4]
}

Itt a binary.BigEndian.PutUint32 írja a szám 4 bájtját a bytes szeletbe a legnagyobb értékű bájt elsőként. Az ellenkező sorrendhez használható a binary.LittleEndian.