gpt4 book ai didi

erlang - 如何将 erlang float 格式化为整数(不带小数点)

转载 作者:行者123 更新时间:2023-12-04 01:21:34 26 4
gpt4 key购买 nike

我需要生成一个稍后将打印的字符串,并且其中不能有小数点。为此,我尝试在 Erlang 中使用 io_lib:format 模块,但我不确定实现此目的的适当格式是什么。

例如,我可以使用以下高达 0.1 的精度,但不能使用 .0

io_lib:format("~.2f", [789.1234]).
789.12

io_lib:format("~.1f", [789.1234]).
789.1

io_lib:format("~.0f", [789.1234]).
** exception error: bad argument
in function io_lib:format/2
called as io_lib:format("~.0f",[789.1234])

我需要的只是:
  • 789.1234 产生字符串 “789”
  • 123.0 产生字符串 “123”

  • 我知道我可以进行“重新”替换,但我正在尝试找到一种格式优雅的方式。

    最佳答案

    如果您在 erlang 中截断浮点数,它将变为整数。下面是代码。

    1> is_float(round(1.5)).
    false
    2> is_integer(round(1.5)).
    true
    3> is_float(trunc(1.5)).
    false
    4> is_integer(trunc(1.5)).
    true
    5> round(1.5).
    2
    6> trunc(1.5).
    1

    关于erlang - 如何将 erlang float 格式化为整数(不带小数点),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16598987/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com