gpt4 book ai didi

windows - Rexx - 方括号用法

转载 作者:可可西里 更新时间:2023-11-01 11:12:41 24 4
gpt4 key购买 nike

我是 Rexx 的新手,这里是非常基础的东西,我想快速获取数组的最后一个元素。

打开适用于 Windows 的 Object Rexx 4.2.0:

test.0=2
test.1="foo"
test.2="bar"
say test.[test.0]

==> 按需输出:

bar

我的简单猜测是 Open Object Rexx 解释器在工作。方括号不能与 z/OS 上的 Rexx 一起使用。

我想到的第一件事(不是 RTFM):

say test.test.0
say test.(test.0)

==> 输出不好:

TEST.TEST.0
5 *-* say test.(test.0)
Error 16 running Test.REX line 5: Label not found
Error 16.1: Label "SYNTAX" not found

方括号还有其他用法吗?为什么来自 C/Java/Python 我要 test.test.0 或 test.(test.0) 像一个虚拟人?

找不到比这更多关于 Rexx 中方括号用法的信息:#Reginald's tail expression

所以现在在 z/OS 下我坚持:

temp=test.0
say test.temp

最佳答案

您已经找到了问题的答案。

大型机 REXX(z/OS、z/VSE、z/VM)下的唯一方法是您在上面编写的代码:

temp=test.0
say test.temp

可以在 Compound Symbols 下的 z/OS TSO/E REXX 引用中找到了解 REXX 解释器正在做什么的最佳文档。 (V2.1 链接)。它描述了为什么 test.test.0 不起作用,因为解释器如何处理该行;在本例中,它正在寻找词干 test.test.0。

注意你可以编码

test.test.0 = 0

您将拥有一个有效的词干 test.test.0(尽管在大多数情况下可能没有用)。

链接中的下一个主题讨论了词干变量,其中也包含很多有用的信息。

我强烈建议阅读 z/OS TSO/E REXX Referencez/OS TSO/E REXX User's Guide (两个 V2.1 链接)。


关于windows - Rexx - 方括号用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25057337/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com