2015-10-24 106 views
0

爲什麼如果我使用truncate,應該將float強制轉換爲int,會出現此錯誤?它包含一個int列表。OCaml - 此表達式的類型爲float,但表達式的類型爲int

let find_closest bi = 
    let bi_integer = (car bi) in 
    truncate (floor ((log bi_integer)/(log 2))) 
+0

什麼是''car'',''truncate'',''floor'',''log''? – objmagic

+0

不是截斷,地板和日誌內置語言?車被設置爲List.hd – ghostofrasputin

+0

抱歉。我沒注意到... – objmagic

回答

2

使用(float_of_int bi_integer),而不是僅僅bi_integer。也可以使用/.而不是/並使用2.0而不是2 --OCaml在類型之間沒有隱式轉換。

相關問題