我從John Whitington的最初開始遵循書籍OCaml。在第91-92頁他討論瞭如何打印和讀取OCaml的值。他聲稱,代碼如何在OCaml中打印和讀取文件
let rec read_dict()=
let i=read_int() in
if i=0 then
[]
else
let name=read_line in
(i, name):: read_dict();;
read_dict();;
應該讓我拿一些輸入整數值和字符串值,並返回我對的列表。但是我無法在我的計算機上執行代碼,也無法在嘗試Ocaml網站上成功執行代碼。請問有什麼不對?
我試圖在Windows IDE OCaml的頂層,在UTOP在Ubuntu,以及嘗試OCaml的在網站上。在第一個例子中,程序繼續運行,沒有任何東西出現。在第二個它需要價值,但永遠不會結束。在第三種情況下,它需要值,但是當我給出一個字符串值時給我一個錯誤消息。
當你說它取值但永不結束時,你是否嘗試給出'0'作爲整數?這看起來像是什麼應該結束輸入。 –
讓我試着在烏托邦再次實現它。但是,在Try Ocaml網站中,它以0結尾,但它不能帶任何字符串值。 –