[英]Haskell 64 bit numerical type
我在Haskell中编写一个函数来处理超过32位int的数字。 我找不到这种类型,我似乎在寻找错误的术语。
它需要能够保持大约2 ^ 40的数字,而不会损失任何精度
例:
addTwo :: Int -> Int -> Int
addTwo a b = a + b
main :: IO()
main = do
putStrLn ( show ( addTwo 700851475143 1 ) )
对于无界精度,请使用Integer类型。 对于64位精度,跨平台,使用Data.Int.Int64。 使用Hoogle很容易找到两者: http ://haskell.org/hoogle/
您想要Integer
数据类型而不是Int
:
addTwo :: Integer -> Integer -> Integer
使用Integer
,它是无限精度,而不是Int
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.