2014-02-23 4 views
0

Ocaml-top에서 사용자의 입력 방법을 알려주시겠습니까?ocaml top : 사용자 입력 받기

그것은이 링크에서 찾을 수 있습니다 내가 OCaml의에서 초보자 그리고 난 this example

이이 코드를 실행하기 위해 사용자의 입력을 얻으려고 http://www.typerex.org/ocaml-top.html

:

let rec hilo n = 
    let() = print_string "type a number: " in 
    let i = read_int() 
    in 
     if i = n then 
     let() = print_string "BRAVO" in 
     let() = print_newline() 
     in print_newline() 
     else 
     let() = 
      if i < n then 
      let() = print_string "Higher" 
      in print_newline() 
      else 
      let() = print_string "Lower" 
      in print_newline() 
     in hilo n ;; 

하지만 프로그램이 중지됩니다. Type a number

답변

1

이것은 실제로 가능하지 않습니다. OCaml-top은 표준 입력을 통해 ocaml 인터프리터에 명령을 보내고 read_int는 stdin에서도 입력을 읽습니다. 이 문제는 https://github.com/OCamlPro/ocaml-top/issues/45에서 추적됩니다.

+0

그러면 사용자의 입력을 얻을 수있는 방법이 없습니다 ... 즉, 명령 줄에서 실행해야합니다. 오, 이런 ... –

+0

어디에 문제가 있습니까? 최상위 레벨에서'let i = ...'를 입력하고이 코드에서'i' 선언 행을 제거하십시오. –

0

명령 프롬프트에서 실행 해보십시오. 명령 프롬프트에 다음 명령을 입력하십시오. ocaml filename.ml 환경 변수에 경로를 설정 한 경우에만 사용할 수 있습니다.

+0

나는 이것을 시도했지만 여전히 사용자 입력을 얻을 수 없습니다! 어떤 생각 ?? –