To get the memory address of a variable in Go or Golang, you can use the & symbol (ampersand) followed by the name of the variable you wish to get the memory address of.
TL;DR
package main
import "fmt"
func main(){
    // a simple variable
    role := "Admin"
    // get the memory address of
    // the `role` variable
    // using the `&` symbol before
    // the `role` variable
    roleMemAddr := &role
    // log to the console
    fmt.Println(roleMemAddr) // 0xc000098050 <- this was the memory address in my system, yours may be different
}
For example, let's say we have a variable called role having a string type value of Admin like this,
package main
func main(){
    // a simple variable
    role := "Admin"
}
Now to get the memory address of the role variable you can use the & symbol followed by the variable name role without any whitespace.
It can be done like this,
package main
func main(){
    // a simple variable
    role := "Admin"
    // get the memory address of
    // the `role` variable
    // using the `&` symbol before
    // the `role` variable
    roleMemAddr := &role
}
Finally, let's print the roleMemAddr value to the console like this,
package main
import "fmt"
func main(){
    // a simple variable
    role := "Admin"
    // get the memory address of
    // the `role` variable
    // using the `&` symbol before
    // the `role` variable
    roleMemAddr := &role
    // log to the console
    fmt.Println(roleMemAddr) // 0xc000098050 <- this was the memory address in my system, yours may be different
}
We have successfully got the memory address of a variable in Go. Yay 🥳!
See the above code live in The Go Playground.
That's all 😃.
              
    
Top comments (0)