打印和Go中打印之间的区别[重复]

This question already has an answer here:

What will be the difference between the fmt.Print("print something") and just print("print something") in Go lang.

var a int
fmt.Print("In Print ", &a, "
 ")
print("In print ", &a, "
")

Both provide the same result.

Result :

In Print 0xcSameAddressLocation
In print 0xcSameAddressLocation 

However when I do this :

ar := []int{1, 2, 3, 4, 5, 6, 7, 8}
print("In print ", &ar, "
")
print("In print ", ar[0], "
")
print("In print ", ar, "
")
fmt.Print("In fmt.Print ", &ar, "
")
fmt.Print("In fmt.Print ", &ar[0], "
")
fmt.Print("In fmt.Print ", ar[0], "
")
fmt.Print("In fmt.Print ", ar, "
")

Result:

In print 0xcAddressLocation1
In print 1
In print [8/8]0xcAddressLocation2
In fmt.Print &[1 2 3 4 5 6 7 8]
In fmt.Print 0xcAddressLocation2
In fmt.Print 1
In fmt.Print [1 2 3 4 5 6 7 8]

Can someone please how this works and what "print()" and "fmt.Print()" do in Go Language respectively.

</div>

print() is builtin funstion and it is not guaranteed to stay in the language. See builtin.go