Float是VimScript中的最后一种数据类型,可能是后来加入的,所以排在最后。在非科学计算的编程领域,其实浮点数用的确实很少。虽然如此,它也是一个不可或缺的数据类型,这一节我们来看看vim提供了那些操纵Float类型的内建函数。
(1)float2nr({expr})
把浮点数转换为整数,返回给定浮点数的整数部分。注意:这里不是四舍五入,而是所有小数都舍去。
(2)abs({expr})
求一个浮点的绝对值。该函数也适用于整数。
(3)round({expr})
对一个浮点数进行四舍五入。
(4)ceil( {expr} )
对一个浮点数进行向大取整。 如ceil(2.1)=2, ceil(-2.8)=-2。
(5)floor({expr})
对一个浮点数进行向小取整。
(6)trunc({expr})
对一个浮点数舍去小数部分,这一点与float2nr()相同,只是返回的不是整数而是浮点数。
(7)log10({expr})
求以10为底数的给定浮点数的对数。如 log10(1000) = 3。
(8)pw({x}, {y})
返回x的y次方。
(9)sqrt({exprt})
返回浮点数的平方根。当expr是个负数时,返回NaN。(无效值)
(10)sin({expr})
求正弦值。
(11)cos({expr})
求余弦值。
(12)atan({expr})
求反正切。
(13)atan2({expr1}, {expr2})
求{expr1}/{exrp2}的反正切。此函数从7.3版本才提供。
示例代码:
echo float2nr(1.9) echo round(1.9) echo floor(1.9) echo ceil(1.9) echo trunc(1.9) echo sin(30*3.14/180) echo cos(60*3.14/180) echo atan(-1) echo pow(2,16) echo sqrt(100) echo log10(1000)
1 2.0 1.0 2.0 1.0 0.49977 0.50046 -0.785398 65536.0 10.0 3.0