使用错误的运算符

在 OCaml 中,浮点数和整数有不同的算术运算符。此外,这些运算符只能用于 2 个浮点数或 2 个整数。这是 OCaml 中的无效表达式

1.0 + 2.0
1 + 2.0
1 +. 2
1 +. 2.0

这些中的每一个的正确表达分别是

1. +. 2.
float_of_int 1 +. 2.
1 + 2
float_of_int 1 +. 2.

在 OCaml 中没有自动将整数转换为浮点数,反之亦然。一切都是明确的。这是整数和浮点运算符的列表

操作 整数运算符 浮动运算符
加成 a + b c +. d
减法 a - b c -. d
乘法 a * b c *. c
a / b c /. d
系数 a mod b modfloat c d
N / A c ** d

ab 是整数,cd 是浮点数。