OCaml - 如何将字符串转换为int?

Tes*_*tek 1 string int ocaml

我在Ocaml的新手和Im'trying这样做:

let medio a b =
    (a + b);;
let () = Printf.printf "%d + %d  = %d\n" Sys.argv.(1) Sys.argv.(2) (medio Sys.argv.(1) Sys.argv.(2))    
Run Code Online (Sandbox Code Playgroud)

Sys.argv.(1)必须是C中的arg [1]〜

现在我想将它们用作我的函数medio的参数,但它们是字符串.我怎么能把他们变成int?有ocaml功能吗?在python中是int(Sys.argv.(2))还是int atoi(con​​st char*str)在C中的ocaml

Hug*_*son 7

您可以使用文档中描述的'int_of_string'函数.


ivg*_*ivg 6

我将从int_of_string开始。一般来说,OCaml 标准库提供了在类型之间进行转换的函数,其形式如下<output>_of_<input>,例如float_of_stringstring_of_int, 等。