This is a created article in which the information may have evolved or changed.
The declaration of the Golang pointer is very clear and unambiguous.
var i int: Declares an ordinary variable of type int . You can read this: A variable is declared i , and the type is int . (Note: Golang put the variable type behind the variable name)
var ip *int: Declares a pointer variable of type *int (why not put it * on the right?). May be afraid to confuse multiplication sign and pointers). The pointer variable stores the memory address (equivalent to the index of the byte array), and the corresponding content on the memory address is the int type.
var array [3]int: The declaration of an array variable array of type [3]int (the length of the array is 3, and the element of the array is the int type).
var arrayp [3]*int: The declaration of the pointer array variable arrayp , type [3]*int (array length is 3, array element is *int type).