Ocaml:使用 list.length

发布于 2024-10-30 08:01:47 字数 452 浏览 2 评论 0原文

我正在尝试查找 ocaml 中列表的长度。

我首先调用一个函数

<前><代码>>让 get_list_length e 输入 > print_list_length 输出 x

get_list_length 中的实际代码是我感到困惑的地方。 “e”是“命令”列表,我想找到所有“命令”的长度。

let get_list_length(e:values) : 单位 =
将 e 与
匹配 让x = 列表.length(e);;

所以我的 e 是“命令”列表,它们是我的语法文件中指定的一堆值。我对如何获取列表的长度感到困惑,因为 e 是一个值列表,我想要该列表的长度。

任何帮助将不胜感激。

I am trying to find the length of a list in ocaml.

I call a function first called

> let get_list_length e in   
> print_list_length out x

the actual code in get_list_length is where I am confused. The "e" is a list of "commands" and I want to find the length of all the "commands".

let get_list_length(e:values) : unit =
match e with
let x =
list.length(e);;

So my e is the list of "commands" which are a bunch of values specified in my grammar file. I am confused about how to get the length of the list since e is a list of values and I want the length of that list.

Any help would be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

傾旎 2024-11-06 08:01:47

获取列表的长度很简单:

List.length my_list

您的 get_list_length 函数可以简单如下:

let get_list_length e = List.length e

或更简单:

let get_list_length = List.length

正如您当前所定义的那样,get_list_length 返回类型 unit 所以你不会从中得到任何有用的东西。您也错误地使用了 match,通常这样使用:

match e with something -> do something
| something_else -> do something_else

To get the length of a list is simple:

List.length my_list

Your get_list_length function can be as simple as:

let get_list_length e = List.length e

or more simply:

let get_list_length = List.length

As you currently have defined it, get_list_length returns type unit so you won't get anything useful from it. You are also using match incorrectly, it's usually used like this:

match e with something -> do something
| something_else -> do something_else
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文