Rexx - 子例程

在任何编程语言中,整个程序都被分成逻辑模块。 这使得编写易于维护的代码变得更加容易。 这是任何编程语言的基本要求。

在Rexx中,可以使用子例程和函数来编写模块。 让我们详细看看子例程。

定义子例程

函数声明的语法如下 −

FunctionName: 
   Statement#1 
   Statement#2 
   …. 
   Statement#N

其中,

  • FunctionName − 这是分配给子例程的名称。

  • Statement#1 .. Statement#N − 这些是构成子例程的语句列表。

下面的程序是一个简单的示例,展示了子例程的使用。

/* 主程序 */
call add 
exit 
add: 
a = 5 
b = 10 
c = a + b 
say c 

上述程序需要注意以下几点 −

  • 我们正在定义一个名为add的子例程。

  • 子例程执行简单的添加功能。

  • exit 语句必须用于表示主程序的结束。

上述程序的输出如下 −

15

使用参数

也可以在 Rexx 中使用参数。 以下示例展示了如何实现这一点。

/* 主程序 */
call add 1,2 
exit 
add: 
PARSE ARG a,b 
c = a + b 
say c

上述程序需要注意以下几点 −

  • 我们正在定义一个名为 add 的子例程,它采用 2 个参数。

  • 在子例程中,使用 PARSE 和 ARG 关键字解析 2 个参数。

上述程序的输出如下 −

3

不同的参数方法

让我们看看其他一些可用于参数的方法。

arg

此方法用于返回为子例程定义的参数数量。

语法

arg() 

参数 − None

返回值 − 此方法返回为子例程定义的参数数量。

示例

/* 主程序 */
call add 1,2 
exit 
add: 
PARSE ARG a,b 

say arg() 
c = a + b 
say c 

当我们运行上面的程序时,我们将得到以下结果。

2 
3 

arg(index)

该方法用于返回特定位置处参数的值。

语法

arg(index)

参数

  • Index − 要返回的参数的索引位置。

返回值 − 此方法返回特定位置处参数的值。

示例

/* 主程序 */
call add 1,2 
exit 
add: 
PARSE ARG a,b 

say arg(1) 
c = a + b 
say c 

当我们运行上面的程序时,我们将得到以下结果。

1 
3