ERLANG - 默认浮点大小

时间:2010-11-17 17:13:57

标签: erlang floating-point integer

有没有办法阻止将10000000这样的数字自动转换为浮点数?

2 个答案:

答案 0 :(得分:7)

有两种情况会发生类似自动转换的事情:

  1. 比较数字是否相等(您可以使用=:=来阻止自动转换):

    1> 1 == 1.0.
    true
    2> 1 =:= 1.0.
    false
    
  2. 此外,/与C和类似语言的工作方式不同,并且总是返回一个浮点数(使用div进行整数除法)。

  3. 但在这两种情况下,数字的大小都很重要。

答案 1 :(得分:4)

没有整数自动转换为浮点数:

只需输入erlang shell:

1> 10000000.
10000000
2> 1000000000000000000000000000000000.
1000000000000000000000000000000000
3> 1000000000000000000000000000000000 + 1.
1000000000000000000000000000000001
相关问题