位置:首页 > 高级语言 > Euphoria在线教程 > Euphoria 函数

Euphoria 函数

Euphoria 函数和过程是一样的,但它们返回一个值,并且可以在表达式中使用。

本节将解释你如何在Euphoria 中编写自己的函数。

函数定义:

在我们使用一个函数之前,我们需要定义这个函数。最常用的方法是使用function关键字定义一个函数,在兴奋,其次是独特的函数名,参数列表(可能为空),end function 的声明语句块结束。基本语法如下所示: 

function functionname(parameter-list)

  statements
  ..........
  return [Euphoria Object]

end function

例子:

一个简单的 sayHello函数不带参数在这里被定义:

function sayHello()
   puts(1, "Hello there")
   return 1
end function

调用函数:

以后在脚本中要调用一个函数的地方,简单需要编写的名称,函数如下:

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

function sayHello()
   puts(1, "Hello there")
   return 1
end function

-- Call above defined function.
sayHello()

这将产生以下结果:

Hello there

函数参数:

到现在我们已经看到函数没有参数。但是有一个设施,传递不同的参数,同时调用一个函数。这些传递的参数可以被捕获在函数内部,并可以对这些参数进行任何操作。

函数可以用逗号分隔的多个参数。

例子:

让我们做一点修改我们的SayHello函数。这一次,它将带有两个参数:

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

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

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

这将产生以下结果:

zara is 8 years old.

return 语句:

Euphoria函数必须有 return语句在函数结果之前。任何 Euphoria 的对象可以被退回。可以有多个返回值,返回的一系列对象。例如

return {x_pos, y_pos}

如果什么都没有返回,那么简单地返回1或0。这里1表示成功的条件和0可以表示失败条件。