int和uint的大小是基于不同的实现是不一样的,但在二者在一个相同平台上是相同的。为了整洁,代码中应使用明确大小的类型,如int64。 在32位机器上,编译器默认使用32位整数,而在64位机器上的整数中有64位。(历史原因,这并不总是如此。)
另一方面,浮点标量和复杂类型的大小是固定的,程序员应该在使用浮点数时留意精度问题。 用于浮点常数的默认类型是float64。 因此,Foo:= 3.0
表达式声明的是一个Float64类型的变量foo。 如果要初始化为Float32,必须在变量声明中明确指定具体变量类型,如下:
var foo float32 = 3.0
或者,常数必须写成类似的转换表达式foo:= float32(3.0)