我正在尝试创建一个OCaml函数,将一个字符串中的'a'添加到给定的参数中 .
let rec count_l_in_word (initial : int) (word : string) : int=
if String.length word = 0 then initial else
if word.[0] = 'a' then
count_l_in_word initial+1 (Str.string_after word 1)
else count_l_in_word initial (Str.string_after word 1)
我在第4行得到一个错误,说'这个表达式有类型字符串 - > int但是这里用的是int'类型 . 我不确定为什么它希望表达式'count_l_in_word initial 1'是一个int . 它应该真的期望整行'count_l_in_word initial 1(Str.string_after word 1)'是一个int .
有人能帮忙吗
1 回答
被解析为
所以你需要添加一些parens: