我想要做的就是将一个浮点数作为字符串存储到一个变量中,我使用了以下代码:
let float_number = 0.00005 in
let str_number = string_of_float float_number in
Printf.printf "%s" str_number;;
运行此代码后,我得到了“5e-05”,这不是我想要的,我想要的是“0.00005”。我知道Printf.printf "%f" float_number
打印出“0.00005”,但它没有存储在变量中。
答案 0 :(得分:3)
您可以使用Printf.sprintf来完成此任务。为了保持字符串与文字浮点数完全相同,我必须将精度格式指令.5
添加到格式字符串。
# let float_number = 0.00005
let str_number = Printf.sprintf "%.5f" float_number ;;
val float_number : float = 5e-05
val str_number : string = "0.00005"