跳转至

类型转换

go 语言中不存在隐式类型转换,也就是说所有的类型转换都要是显式的,如下面程序就会报错

package main

import "fmt"

func main() {
    var a int8 = 1
    var b int32 = int32(a)

    // 这里会报错,虽然是从窄向宽转
    var c int32 = a
    fmt.Println("a: %d, b: %d c: %d \n", a, b, c)
}
运行时报如下错误
go run .
# github.com/Neeky/gos
./main.go:8:16: cannot use a (variable of type int8) as int32 value in variable declaration