Rexx - 子程序


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

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

定义子程序

函数声明的语法如下 -

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

在哪里,

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

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

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

/* Main program */ 
call add 
exit 
add: 
a = 5 
b = 10 
c = a + b 
say c 

上述程序应注意以下事项 -

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

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

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

上述程序的输出如下 -

15

使用参数

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

/* Main program */ 
call add 1,2 
exit 
add: 
PARSE ARG a,b 
c = a + b 
say c

上述程序应注意以下事项 -

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

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

上述程序的输出如下 -

3

不同的论证方法

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

精氨酸

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

语法-

arg() 

参数- 无

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

示例-

/* Main program */ 
call add 1,2 
exit 
add: 
PARSE ARG a,b 

say arg() 
c = a + b 
say c 

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

2 
3 

参数(索引)

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

语法-

arg(index)

参数

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

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

示例-

/* Main program */ 
call add 1,2 
exit 
add: 
PARSE ARG a,b 

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

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

1 
3