在OCaml中打印元组
我想打印类型为在OCaml中打印元组,ocaml,Ocaml,我想打印类型为int*int的方法的结果 我试着这样做: printf "%d %d\n" (find (99, 10));; 然而,我得到: Error: This expression has type int * int but an expression was expected of type int 我看了这里,但没有提到元组 那么,打印元组的正确方法是什么呢?您可以将其解耦,例如 let (x,y) = find (99,10) in printf "%d %d
int*int
的方法的结果
我试着这样做:
printf "%d %d\n" (find (99, 10));;
然而,我得到:
Error: This expression has type int * int
but an expression was expected of type int
我看了这里,但没有提到元组
那么,打印元组的正确方法是什么呢?您可以将其解耦,例如
let (x,y) = find (99,10) in
printf "%d %d\n" x y
或者,您可以定义元组打印机,例如
let pp_int_pair ppf (x,y) =
fprintf ppf "(%d,%d)" x y
然后将其与%a
说明符一起使用,例如
printf "%a\n" pp_int_pair (find (99,10))