分配和符号

变量 是一个对象,其值可以在 REXX 程序运行期间更改。 更改变量值的过程称为 变量指定新值。

变量的值是可包含任何字符的任意长度的单个字符串。

可以使用 ARG , PARSE 或 PULL 指令, VALUE 内置函数或变量池接口向变量分配新值。 更改变量值的最常见方法是赋值指令本身。 以下格式的任何子句都被视为赋值:

symbol=expression; 
expression 的结果将成为由等号左边的符号指定的变量的新值。 当前,在 VM 上,如果省略 expression,那么该变量将设置为空字符串。 但是,建议将变量显式设置为空字符串: symbol=''。 例如:
/* Next line gives FRED the value "Frederic" */
Fred='Frederic'

命名变量的符号不能以数字 (0-9) 或句点开头。 (如果对变量名称的第一个字符没有此限制,那么您可以重新定义一个数字; 例如, 3=4; 将为称为 34的变量提供值。)

即使未对表达式指定值,也可以在表达式中使用符号,因为符号始终具有已定义的值。 未指定值的变量为 un初始化。 其值是符号本身的字符,转换为大写 (即,小写 a-z 转换为大写 A-Z)。 但是,如果它是复合符号,那么其值是符号的派生名称 (请参阅 复合符号)。 例如:
/* If Freda has not yet been assigned a value,   */
/* then next line gives FRED the value "FREDA"   */
Fred=Freda

REXX 中符号的含义因其上下文而异。 作为表达式中的术语 (而不是关键字) ,符号属于四个组之一: 常量符号,简单符号,复合符号和词干。 不能为常量符号分配新值。 您可以对名称对应于单个值的变量使用简单符号。 可以将复合符号和词干用于更复杂的变量集合,例如数组和列表。