title: Go: **Type pointer
body: <p>In <a href="https://tour.golang.org/moretypes/1" rel="nofollow noreferrer">tutorial</a> is written: </p>
  
  <blockquote>
    <p>The type <code>*T</code> is a pointer to a <code>T</code> value. The <code>&amp;</code> operator generates
    a pointer to its operand.</p>
  </blockquote>
  
  <p>I am just playing around with pointers in Go and have following:</p>
  
  <pre><code>example := 42
  
  p:=&amp;example
  fmt.Println(reflect.TypeOf(&amp;p)) // **int
  fmt.Println(reflect.TypeOf(*p)) // int
  </code></pre>
  
  <p>So if I got it correctly, <code>&amp;p</code> is a pointer to a pointer to an int value.</p>
  
  <p><a href="https://i.stack.imgur.com/1Nsuj.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/1Nsuj.png" alt="pointer memory scheme"></a></p>
  
  <p>What is use of **Type in the Go language?</p>