go 指针强转

import "unsafe"

 

	var a uint = 0
	p := uintptr(unsafe.Pointer(&a))
	for i := 0; i < int(unsafe.Sizeof(a)); i++ {
		p += 1
		pb := (*byte)(unsafe.Pointer(p))
		*pb = 1
	}
	fmt.Printf("%x\n", a) //0x1010100

 

你可能感兴趣的:(Go)