RosettaCodeData/Task/Call-a-foreign-language-function/OCaml/call-a-foreign-language-function-5.ml
2024-10-16 18:07:41 -07:00

11 lines
352 B
OCaml

open Ctypes
open Foreign
let myfunc_a = foreign "myfunc_a" (void @-> returning void)
let myfunc_b = foreign "myfunc_b" (int @-> float @-> returning float)
let myfunc_c = foreign "myfunc_c" (ptr void @-> int @-> returning string)
let myfunc_c lst =
let arr = CArray.of_list int lst in
myfunc_c (to_voidp (CArray.start arr)) (CArray.length arr)
;;