我尝试通过以下方式初始化 int64 变量:
let k:int64 = 4000000000;;
但是我收到以下错误消息:
Error: Integer literal exceeds the range of representable integers of type int
我如何将 k 初始化为 40 亿的值?谢谢。
我尝试通过以下方式初始化 int64 变量:
let k:int64 = 4000000000;;
但是我收到以下错误消息:
Error: Integer literal exceeds the range of representable integers of type int
我如何将 k 初始化为 40 亿的值?谢谢。
您应该使用L
说明符来指示int64
文字:
let k = 4000000000L;;
或者,由于数字超出了 int32 的范围,您可以将其转换为float
:
let k = Int64.of_float 4000000000.;;