首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Haskell 64位数值类型

Haskell 64位数值类型
EN

Stack Overflow用户
提问于 2009-06-14 22:41:41
回答 3查看 2K关注 0票数 5

我正在用Haskell编写一个函数,它处理超过32位int长度的数字。我找不到这样做的类型,而且我似乎在搜索错误的术语。

它需要能够保存长度约为2^40的数字而不损失任何精度

示例:

代码语言:javascript
复制
addTwo :: Int -> Int -> Int
addTwo a b = a + b

main :: IO()
main = do
    putStrLn ( show ( addTwo 700851475143 1 ) )
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-06-15 03:43:15

对于无界精度,请使用Integer类型。对于跨平台的64位精度,请使用Data.Int.Int64。这两个都很容易用Hoogle找到:http://haskell.org/hoogle/

票数 21
EN

Stack Overflow用户

发布于 2009-06-14 22:46:01

您希望使用Integer数据类型而不是Int数据类型

代码语言:javascript
复制
addTwo :: Integer -> Integer -> Integer
票数 7
EN

Stack Overflow用户

发布于 2009-06-14 22:46:32

请使用精度不受限制的Integer,而不是Int

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/993936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档