이 코드ocaml 최상위에서 출력 한 결과 "- : unit =()"이 나타나지 않도록하려면 어떻게해야합니까?
for i=0 to 5 do print_string "a" done;;
출력됩니다
aaaaaa- : unit =()
하지만 어떻게 수 I 출력을위한-expression의 값을 출력하지 않고 그냥 "AAAAAA"?
이 코드ocaml 최상위에서 출력 한 결과 "- : unit =()"이 나타나지 않도록하려면 어떻게해야합니까?
for i=0 to 5 do print_string "a" done;;
출력됩니다
aaaaaa- : unit =()
하지만 어떻게 수 I 출력을위한-expression의 값을 출력하지 않고 그냥 "AAAAAA"?
실제로 표현식의 값을 인쇄하지 않습니다. 기본적으로 평가 된 표현식의 값/유형을 인쇄하는 인터프리터 세션에있는 것입니다. 프로그램을 컴파일했다면 a를 인쇄 할 것입니다.
프로그램을 컴파일 할 수 있습니다. 이런 식으로 인터프리터에서 타입 정보를 얻지 못할 것이다. - : unit =()
이 특정 프로그램은 컴파일 될 때 어떤 종류의'print_endline()'또는'flush stdout'가 없기 때문에 아무 것도 출력하지 않을 수도있다. 제가 학생이었을 때, 그 동안에는 상황이 바뀌었지만, 이것에 물리는 것이 일반적이었습니다. –
업데이트 : http://caml.inria.fr/pub/old_caml_site/FAQ/FAQ_DEBUTANT-eng.html#impression_flush를 참조했습니다. 문제는 OCaml 3.12와 함께 나타나지 않지만 Caml Light에는 여전히있을 것입니다. –