Rexx - 基本语法



为了理解 Rexx 的基本语法,让我们先来看一个简单的 Hello World 程序。

示例

/* Main program */ 
say "Hello World" 

可以看到 Hello World 程序是多么简单。它只是一行简单的脚本,用于执行 Hello World 程序。

关于上述程序,需要注意以下几点:

  • say 命令用于将值输出到控制台。

  • /* */ 用于 Rexx 中的注释。

上述程序的输出将是:

Hello World

语句的通用形式

在 Rexx 中,让我们看看程序的通用形式。请看下面的例子。

/* Main program */ 
say add(5,6) 
exit 
add: 
parse arg a,b 
return a + b

上述程序的输出将是:

11

让我们回顾一下我们从上述程序中了解到的内容:

  • Add 是一个定义为将两个数字相加的函数。

  • 在主程序中,5 和 6 的值用作 add 函数的参数。

  • exit 关键字用于退出主程序。这用于区分主程序和 add 函数。

  • add 函数用“:”符号区分。

  • parse 语句用于解析传入的参数。

  • 最后,return 语句用于返回数值的和。

子程序和函数

在 Rexx 中,代码通常被分成子程序和函数。子程序和函数用于将代码分成不同的逻辑单元。子程序和函数之间的关键区别在于函数返回值,而子程序不返回值。

以下是子程序和函数在加法实现方面的关键区别示例:

函数实现

/* Main program */ 
say add(5,6) 
exit 
add: 
parse arg a,b 
return a + b

子程序实现

/* Main program */ 
add(5,6) 
exit 
add: 
parse arg a,b 
say a + b

两个程序的输出都将是值 11。

执行命令

Rexx 可以用作各种基于命令的系统的控制语言。Rexx 在这些系统中执行命令的方式如下:当 Rexx 遇到既不是指令也不是赋值的程序行时,它会将该行视为一个要计算然后传递给环境的字符串表达式。

例如:

示例

/* Main program */ 
parse arg command 
command "file1" 
command "file2" 
command "file3" 
exit 

此程序中的三行类似代码都是字符串表达式,它将文件名(包含在字符串常量中)添加到命令名(作为参数给出)。生成的字符串将传递给环境,作为命令执行。命令完成后,“rc”变量将设置为命令的退出代码。

上述程序的输出如下:

sh: file1: command not found
     3 *-* command "file1" 
       >>>   " file1"
       +++   "RC(127)"
sh: file2: command not found
     4 *-* command "file2" 
       >>>   " file2"
       +++   "RC(127)"
sh: file3: command not found
     5 *-* command "file3" 
       >>>   " file3"
       +++   "RC(127)"

Rexx 中的关键字

REXX 的自由语法意味着某些符号在特定上下文中保留供语言处理器使用。

在特定的指令中,某些符号可能被保留用于分隔指令的各个部分。这些符号被称为关键字。REXX 关键字的示例包括DO 指令中的 WHILETHEN(在这种情况下充当子句终止符)在IF 或 WHEN 子句之后。

除了这些情况外,只有作为子句中第一个标记的简单符号,并且不后跟“=”或“:”,才会检查其是否为指令关键字。您可以在子句中的其他地方自由使用这些符号,而不会将其视为关键字。

Rexx 中的注释

注释用于记录您的代码。单行注释通过在该行的任何位置使用 /* */ 来标识。

例如:

/* Main program */
/* Call the add function */
add(5,6)

/* Exit the main program */
exit add:

/* Parse the arguments passed to the add function */ parse arg a,b
/* Display the added numeric values */
say a + b

注释也可以写在代码行之间,如下面的程序所示:

/* Main program */ 
/* Call the add function */ 
add(5,6) 

/* Exit the main program */ 
exit 
add: 
parse    /* Parse the arguments passed to the add function */ 
arg a,b 

/* Display the added numeric values */ 
say a + b

上述程序的输出将是:

11

您也可以在注释中包含多行,如下面的程序所示:

/* Main program 
The below program is used to add numbers 
Call the add function */ 
add(5,6) 
exit 
add: 
parse arg a,b 
say a + b

上述程序的输出将是:

11
广告