- Erlang教程
- Erlang - 主页
- Erlang - 概述
- Erlang - 环境
- Erlang - 基本语法
- Erlang-Shell
- Erlang - 数据类型
- Erlang - 变量
- Erlang - 运算符
- Erlang - 循环
- Erlang - 决策
- Erlang - 函数
- Erlang - 模块
- Erlang - 递归
- Erlang - 数字
- Erlang - 字符串
- Erlang - 列表
- Erlang - 文件 I/O
- Erlang - 原子
- Erlang - 地图
- Erlang - 元组
- Erlang - 记录
- Erlang - 异常
- Erlang - 宏
- Erlang - 头文件
- Erlang - 预处理器
- Erlang - 模式匹配
- Erlang - 守卫
- Erlang-BIFS
- Erlang - 二进制文件
- Erlang - 乐趣
- Erlang - 进程
- Erlang - 电子邮件
- Erlang - 数据库
- Erlang - 端口
- Erlang - 分布式编程
- Erlang-OTP
- Erlang - 并发
- Erlang - 性能
- Erlang - 驱动程序
- Erlang - 网络编程
- Erlang 有用资源
- Erlang - 快速指南
- Erlang - 有用的资源
- Erlang - 讨论
Erlang - 基本语法
为了理解Erlang的基本语法,我们首先看一个简单的Hello World程序。
例子
% hello world program -module(helloworld). -export([start/0]). start() -> io:fwrite("Hello, world!\n").
关于上述程序需要注意以下事项 -
% 符号用于向程序添加注释。
模块语句就像在任何编程语言中添加名称空间一样。因此,在这里,我们提到此代码将成为名为helloworld的模块的一部分。
使用导出功能,以便可以使用程序中定义的任何功能。我们正在定义一个名为 start 的函数,为了使用 start 函数,我们必须使用导出语句。/ 0表示我们的函数“start”接受 0 个参数。
我们最终定义了我们的启动函数。这里我们使用另一个名为io的模块,它具有 Erlang 中所需的所有输入输出函数。我们使用fwrite函数将“Hello World”输出到控制台。
上述程序的输出将是 -
输出
Hello, world!
声明的一般形式
在 Erlang 中,您已经看到 Erlang 语言中使用了不同的符号。让我们回顾一下从简单的 Hello World 程序中看到的内容 -
连字符(-)通常与模块、导入和导出语句一起使用。连字符用于为每个语句赋予相应的含义。因此,Hello world 程序的示例如以下程序所示 -
-module(helloworld). -export([start/0]).
每个语句都用点(.)符号分隔。Erlang 中的每个语句都需要以此分隔符结束。Hello world 程序的一个示例如以下程序所示 -
io:fwrite("Hello, world!\n").
斜杠(/)符号与函数一起使用来定义函数接受的参数数量。
-export([start/0]).
模块
在Erlang中,所有的代码都被分成模块。模块由一系列属性和函数声明组成。它就像其他编程语言中的命名空间的概念一样,用于在逻辑上分隔不同的代码单元。
定义模块
模块是用模块标识符定义的。一般语法和示例如下。
句法
-module(ModuleName)
ModuleName需要与文件名相同,减去扩展名.erl。否则代码加载将无法按预期进行。
例子
-module(helloworld)
这些模块将在后续章节中详细介绍,这只是为了让您对如何定义模块有一个基本的了解。
Erlang 中的导入语句
在Erlang中,如果想使用现有Erlang模块的功能,可以使用import语句。以下程序描述了导入语句的一般形式 -
例子
-import (modulename, [functionname/parameter]).
在哪里,
Modulename - 这是需要导入的模块的名称。
functionname/parameter - 模块中需要导入的函数。
让我们更改编写 hello world 程序的方式以使用 import 语句。该示例如以下程序所示。
例子
% hello world program -module(helloworld). -import(io,[fwrite/1]). -export([start/0]). start() -> fwrite("Hello, world!\n").
在上面的代码中,我们使用 import 关键字导入库“io”,特别是fwrite函数。所以现在每当我们调用 fwrite 函数时,我们不必到处提及io模块名称。
Erlang 中的关键字
关键字是 Erlang 中的保留字,不应将其用于除预期目的之外的任何其他目的。以下是 Erlang 中的关键字列表。
后 | 和 | 并且 | 乐队 |
开始 | 不 | 博尔 | BSL |
巴塞尔 | 异或 | 案件 | 抓住 |
条件 | 分区 | 结尾 | 乐趣 |
如果 | 让 | 不是 | 的 |
或者 | 要不然 | 收到 | 雷姆 |
尝试 | 什么时候 | 异或 |
Erlang 中的评论
注释用于记录您的代码。单行注释通过在行中的任意位置使用%符号来标识。以下是相同的示例 -
例子
% hello world program -module(helloworld). % import function used to import the io module -import(io,[fwrite/1]). % export function used to ensure the start function can be accessed. -export([start/0]). start() -> fwrite("Hello, world!\n").