- Euphoria 教程
- Euphoria - 首页
- Euphoria - 概述
- Euphoria - 环境
- Euphoria - 基本语法
- Euphoria - 变量
- Euphoria - 常量
- Euphoria - 数据类型
- Euphoria - 运算符
- Euphoria - 分支
- Euphoria - 循环类型
- Euphoria - 流程控制
- Euphoria - 短路
- Euphoria - 序列
- Euphoria - 日期与时间
- Euphoria - 过程
- Euphoria - 函数
- Euphoria - 文件 I/O
- Euphoria 有用资源
- Euphoria - 快速指南
- Euphoria - 库例程
- Euphoria - 有用资源
- Euphoria - 讨论
Euphoria - 基本语法
Euphoria 语言与 Perl、C 和 Java 有很多相似之处。但是,这些语言之间也存在一些明显的区别。本章旨在帮助您快速了解 Euphoria 中预期的语法。
本教程假设您使用的是 Linux,所有示例都在 Linux 平台上编写。但据观察,Linux 和 WIN32 的程序语法没有明显的区别。因此,您可以在 WIN32 上遵循相同的步骤。
第一个 Euphoria 程序
让我们在一个脚本中编写一个简单的 Euphoria 程序。将以下源代码输入 test.ex 文件并保存。
#!/home/euphoria-4.0b2/bin/eui puts(1, "Hello, Euphoria!\n")
假设 Euphoria 解释器位于 /home/euphoria-4.0b2/bin/ 目录下。现在按如下方式运行此程序:
$ chmod +x test.ex # This is to make file executable $ ./test.ex
这将产生以下结果:
Hello, Euphoria!
此脚本使用了内置函数 puts(),它接受两个参数。第一个参数指示文件名或设备号,第二个参数指示您要打印的字符串。这里 1 指示 STDOUT 设备。
Euphoria 标识符
Euphoria 标识符是用于标识变量、函数、类、模块或其他对象的名称。标识符以字母 A 到 Z 或 a 到 z 开头,然后后跟字母、数字或下划线。
Euphoria 不允许在标识符中使用诸如 @、$ 和 % 之类的标点符号。
Euphoria 是一种区分大小写的编程语言。因此,Manpower 和 manpower 在 Euphoria 中是两个不同的标识符。例如,有效的标识符为:
- n
- color26
- ShellSort
- quick_sort
- a_very_long_indentifier
保留字
以下列表显示了 Euphoria 中的保留字。这些保留字不能用作常量或变量或任何其他标识符名称。Euphoria 关键字仅包含小写字母。
and | exit | override |
as | export | procedure |
break | fallthru | public |
by | for | retry |
case | function | return |
constant | global | routine |
continue | goto | switch |
do | if | then |
else | ifdef | to |
elsedef | include | type |
elsif | label | until |
elsifdef | loop | while |
end | namespace | with |
entry | not | without |
enum | or | xor |
表达式
Euphoria 允许您通过构造表达式来计算结果。但是,在 Euphoria 中,您可以对整个数据序列使用一个表达式进行计算。
您可以像处理单个数字一样处理序列。它可以被复制、传递给子例程或作为单元进行计算。例如:
{1,2,3} + 5
这是一个表达式,它将序列 {1, 2, 3} 和原子 5 相加,得到结果序列 {6, 7, 8}。您将在后续章节中学习序列。
代码块
学习 Euphoria 时程序员遇到的第一个注意事项之一是,没有大括号来指示过程和函数定义或流程控制的代码块。代码块由关联的关键字表示。
以下示例显示了 if...then...end if 块:
if condition then code block comes here end if
多行语句
Euphoria 中的语句通常以换行符结尾。但是,Euphoria 允许将单个语句写在多行中。例如:
total = item_one + item_two + item_three
转义字符
可以使用反斜杠输入转义字符。例如:
下表列出了可以使用反斜杠表示法表示的转义字符或不可打印字符。
反斜杠表示法 | 描述 |
---|---|
\n | 换行符 |
\r | 回车符 |
\t | 制表符 |
\\ | 反斜杠 |
\" | 双引号 |
\' | 单引号 |
Euphoria 中的注释
编译器会忽略任何注释,并且对执行速度没有任何影响。建议在程序中使用更多注释以提高可读性。
注释有三种形式:
注释以两个破折号开头,一直延伸到当前行的末尾。
多行格式注释保留在 /*...*/ 内,即使它出现在不同的行上。
您可以在程序的第一行使用以两个字符序列“#!”开头的特殊注释。
示例
#!/home/euphoria-4.0b2/bin/eui -- First comment puts(1, "Hello, Euphoria!\n") -- second comment /* This is a comment which extends over a number of text lines and has no impact on the program */
这将产生以下结果:
Hello, Euphoria!
注意 - 您可以使用以“#!”开头的特殊注释。这会通知 Linux shell 您的文件应由 Euphoria 解释器执行。