标签: haskell type-conversion
read功能对于将String转换为Int非常有用,但它不支持错误处理。特别是,当字符串值太大而无法表示为Int时,它会以静默方式返回不正确的值:
read
String
Int
> read "123456789012345678901234567890" :: Int -4362896299872285998
如何检查字符串值是否在minBound :: Int和maxBound :: Int之间,从而正确转换为Int?是否存在返回Maybe Int或其他内容的溢出检测转换函数?
minBound :: Int
maxBound :: Int
Maybe Int