并感谢您的帮助。我目前正在处理一项任务,并且一直被错误的递归调用所困扰。我有一个简单的 CAML-Light 函数,它应该接受一个列表和一个大小(数字),并返回一个包含该列表的一部分、该大小的列表以及一个包含其余部分的列表。实际上真的很简单,它是过去 PLT-Scheme 项目的翻译。
但是,我在递归调用时遇到了麻烦。我只是不知道为什么它不起作用。函数是这样的:
let rec cortar texto longitud resultado = match texto, longitud with
| _::t,0 -> resultado::(t::[])
| c::t,x-> cortar t (longitud-1) (consderecha resultado c);;
经度是定义大小的整数。恐怕我做错了什么,因为它似乎无限循环,因为“经度”永远不会达到 0。我(你可能猜到)是 ML 的新手,它是方言,所以任何帮助都会非常感激。
谢谢!
编辑:解决了它,实际上并不是真的......原来我在列表上用逗号而不是分号调用函数。是的。那谢谢啦!!