0
我有一個數據,如:修改列表的列表OCaml中
3 11 12
15 13 14 15
我從文件的閱讀:
let print data =
List.iter (fun l -> printf "%[email protected]" (String.concat " " l)) data
let read filename =
let ch = open_in filename in
let data = Lexer.lex [] (Lexing.from_channel ch) in
close_in ch;
print data
出放爲
3 11 12
15 13 14 15
- >它是一個列表中的列表
而我的問題是當我wa nt修改列表中的列表,它不起作用。例如:
let remove = function
h :: t -> t
;;
let print data =
List.iter (fun l -> remove l; printf "%[email protected]" (String.concat " " l)) data
請幫我解決它。 謝謝你這麼多
謝謝你,這是工作。我可以問爲什麼? – vent 2014-12-04 18:42:28
刪除l不修改l,它返回一個列表。其他的一點:函數remove是來自標準lib的List.tl - 你的remove函數不會在我的結尾編譯(不是全部匹配)。 – 2014-12-04 18:48:36