1-语法基础
shell终端
在终端输入erl即可进入erl环境的终端
命令 | 说明 |
help() | 打印可用的shell函数 |
h() | 打印先前输入过的命令 |
v(N) | 取出第N号提示符对应的计算结果 |
cd(Dir) | 更改当前自录(Dir应是双引号字符串) |
ls()和ls(Dir) | 打印目录内容 |
pwd() | 打印工作目录(当前目录) |
q() | 退出(init:stop() 的简写) |
i() | 打印当前系统的运行时信息 |
memory() | 打印内存使用信息 |
数据类型
- 数值类型
- 整数
- 浮点数
- 二进制串/位串
- 原子
- 元组
- 列表(和字符串)
- 唯一标识符
- PID
- 端口
- 引用
- Fun函数
数值
整数
- 正数101
- 负数-101
- 十六进制数字16#FFffFFff
- 二进制2#1010
- ASCII码查询$9(查询数字9的ASCII码)
浮点数
- 正数3.14
- 负数-0.123
- 科学记数法6.23e-11
运算符
算术运算符
- 加法 +
- 减法 -
- 乘法 *
- 除法 / (结果是浮点数不会被截断)
- 除法 div (如7 div 3 = 3 这个结果小数点位会被截断)
位运算符
- 左移 bsl (1 bsl 2 结果是1左移了两位)
- 右移 bsr (1 bsl 2 结果是1左移了两位)
- 等等
二进制串/位串
- 二进制串是无符号8位字节序列
- 位串是广义的二进制串,长度不必是8的整数倍
二进制串语法: <<0,1,2,3,…,255>>
二进制串例子:
<<"hello",32,"dude">>.
原子
可以将其称为类似其他语言的枚举、常量,符号
原子的格式是:
- 首字母小写如: ok errr undifined. trap_exit
- 后面可以是大写字母 、数字、下划线和@如 route66 abc@ddd
- 如果用上其他字符需要加上单引号’ 如 ‘@#$%’
- 原子长度上限是255个字符
- 目前总数限制100多万 原子一旦创建就不会被销毁除非重启系统 避免全局动态创建原子
- Erlang常用原子 如 ok用于返回 true和false用于布尔运算 undefined用于未知占位符
元组
元组是一个定长 有序序列,元组用大括号括起来 如
三个元素的元组 称为三元组
{1,2,3}
元组也可以嵌套元组如:
{complex, {nested,"struct",{here}}}
列表
列表就是0个或多个Erlang项式(项式也可以是列表),空表也被称为nil
列表的格式中括号包括 如:
[]
[1,2,3]
[[1,2,3],[4,5,6]]