Erlang 整数与浮点数的转换、数字之间的进制转换,浮点数改变精度等等这些功能,Erlang BIF(Erlang内建函数)已经帮我们很好实现,调用他们也很方便,下面将简单说明如何去使用他们。
erlang整数与浮点数转换
整数转浮点数:
% BIF函数 1> float(2). 2.0 % /转换 2> 2/1. 2.0 % math函数 3> math:pow(2,1). 2.0浮点数转整数:
% 取整 4> trunc(2.9). 2 % 四舍五入 5> round(2.9). 3
erlang判断是否浮点数
6> is_float(1). false 7> is_float(1.0). true
erlang判断是否整数
8> is_integer(1). true 9> is_integer(99999999999999999999999999). true 10> is_integer(1.0). false
erlang进制转换
Erlang BIF 提供了两个进制转换的函数,目前支持2进制到36进制:
11> integer_to_list(123, 2). "1111011" 12> integer_to_list(123, 16). "7B" 13> list_to_integer("1111011", 2). 123 14> list_to_integer("7B", 16). 123
其他相关内容:
% 浮点除法 15> 5 / 3. 1.6666666666666667 % 整数除法 16> 5 div 3. 1 % 整数求余 17> 5 rem 3. 2
erlang浮点数改变精度:
18> list_to_float(hd(io_lib:format("~.2f",[1/3]))). 0.33
参考:
http://blog.csdn.net/mycwq/article/details/17555463