github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/gnovm/tests/backup/unsafe3.gno (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"unsafe"
     6  )
     7  
     8  const SSize = 16
     9  
    10  type S struct {
    11  	X int
    12  	Y int
    13  }
    14  
    15  func main() {
    16  	var sBuf [SSize]byte
    17  	s := (*S)(unsafe.Pointer(&sBuf[0]))
    18  
    19  	s.X = 2
    20  	s.Y = 4
    21  
    22  	fmt.Println(sBuf)
    23  }
    24  
    25  // Output:
    26  // [2 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0]