strconv.ParseInt:解析“18446744073709551615”:值超出范围

用 解析 uint64 最大值时这是正常行为strconv.ParseInt吗?

i, err := strconv.ParseInt("18446744073709551615", 10, 64)
fmt.Println(i, err)

我收到一个错误:"strconv.ParseInt: parsing "18446744073709551615": value out of range"当 uint64 的最大允许值为:18446744073709551615

你能解释这种行为吗?

https://golang.org/src/builtin/builtin.go?s=1026:1044#L26

回答

调用 ParseUint 来解析一个无符号整数。

ParseInt 函数解析有符号整数。最大有符号整数为 9223372036854775807。


以上是strconv.ParseInt:解析“18446744073709551615”:值超出范围的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>