1
我想匹配字符文字的整数表达式,编译器抱怨类型不匹配。F#匹配字符值
let rec read file includepath =
let ch = ref 0
let token = ref 0
use stream = File.OpenText file
let readch() =
ch := stream.Read()
let lex() =
match !ch with
| '!' ->
readch()
| _ -> token := !ch
ch必须是int,因为那是stream.Read返回以便使用-1作为文件标记的结尾。如果我用int '!'
替换'!'
,它仍然不起作用。什么是最好的方法来做到这一点?
拾取的字符值,当然,但它是如何处理-1文件标志的结束? – rwallace 2010-05-28 10:56:30
@just首先获取值,然后是类型转换 – 2010-05-28 10:59:35