A pointer holds the memory address of a value rather than the value itself. Go has pointers (like C) but keeps them simple and safe — no pointer arithmetic, and the garbage collector handles memory. They're used to share and modify data efficiently.
The two operators: & and *
x :=
p := &x
fmt.Println(p)
fmt.Println(*p)
*p =
fmt.Println(x)
