📜  Euphoria-程序

📅  最后修改于: 2020-11-04 07:55:09             🧑  作者: Mango


 

过程是一组可重用的代码,可以从程序中的任何位置调用它们。这消除了一次又一次编写相同代码的需要。这有助于程序员编写模块化代码。

与其他任何高级编程语言一样,Euphoria也支持使用过程编写模块化代码所需的所有功能。

您必须在前面的章节中已经看过诸如printf()length()之类的过程。我们一次又一次地使用这些过程,但是它们只在核心Euphoria中被编写过一次。

Euphoria使您也可以编写自己的过程。本节说明如何用Euphoria编写自己的过程。

程序定义

在使用过程之前,您需要对其进行定义。在Euphoria中定义过程的最常见方法是使用procedure关键字,后跟一个唯一的过程名称,一个参数列表(可能为空)和一个以end procedure语句结尾的语句块。基本语法如下所示-

procedure procedurename(parameter-list)

   statements
   ..........

end procedure

这里定义了一个简单的过程sayHello,它不带任何参数-

procedure  sayHello()
   puts(1, "Hello there")
end procedure

调用程序

要在脚本后面的某个地方调用过程,您只需要编写该过程的名称,如下所示:

#!/home/euphoria-4.0b2/bin/eui

procedure  sayHello()
   puts(1, "Hello there")
end procedure 

-- Call above defined procedure.
sayHello()

这产生以下结果-

Hello there

程序参数

到目前为止,您已经看到了没有参数的过程。但是有一种在调用过程时传递不同参数的功能。可以在过程内部捕获这些传递的参数,并且可以对这些参数进行任何操作。

一个过程可以采用多个参数,并用逗号分隔。

让我们在我们的sayHello过程中进行一些修改。这次需要两个参数-

#!/home/euphoria-4.0b2/bin/eui

procedure sayHello(sequence name,atom  age)
   printf(1, "%s is %d years old.", {name, age})
end procedure

-- Call above defined procedure.
sayHello("zara", 8)

这产生以下结果-

zara is 8 years old.