Haskell int float 和 char float

标签 haskell floating-point int

haskell 中是否有一个函数可以从 int 转换为 float,从 char 转换为 float?

我知道有一个函数可以将 char 转换为 int 并将 int 转换为 char。

最佳答案

fromIntegral将从 Int 转换为 Float。

对于 Char to Float,这取决于。如果要获取 Char 的 ASCII 值(暂时忽略 Unicode),请使用 Data.Char.ord:

Prelude Data.Char> fromIntegral (ord '2') :: Float
50.0

如果要读取 Char 的数字,即 '2'变为值 2 , 你可以这样做:
char2float :: Char -> Float
char2float n = fromInteger (read [n])

Prelude Data.Char> char2float '2'
2.0

如果你打算做很多这样的事情,你可能会考虑使用一个实际的解析库来获得实际的错误处理。

关于Haskell int float 和 char float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4136857/

相关文章:

C++ 整数除法到 float

multithreading - Haskell 并行列表计算性能

haskell - 使用 Cabal 和 GHC 构建库的差异

haskell - 转换 a -> a -> Maybe a 以采用 a 和 Maybe a 的任意组合

c - 最适合最大限制为 10^5 的整数的数据类型是什么?

c++ - 为什么 "int"变量不打印负零?

python - 如何在Python中的列表中找到每个整数与模的乘积

haskell - 汇总 Haskell 记录列表

python - 为什么Python中除以10不会简单地导致小数点向左移动?

python - 生成 0.1 到 1.0 之间的随机数。 Python