Erlang - 变量声明

Erlang - 变量声明 首页 / Erlang入门教程 / Erlang - 变量声明

在Erlang中,所有变量都必须以大写字母开头,要注意的一件事是变量是不可变的,这意味着要更改变量的值,需要将其销毁并重新创建。

变量声明

定义变量的一般语法如下-

var-name=var-value
  • var-name - 这是变量的名称。

  • var-value - 这是绑定到变量的值。

-module(helloLearnfk). 
-export([start/0]). 

start() -> 
   X=40, 
   Y=50, 
   Result=X + Y, 
   io:fwrite("~w",[Result]).

在上面的示例中,我们有2个变量,一个是绑定到值40的X,另一个是绑定到值50的Y,另一个名为Result的变量绑定到X和Y的加法。

上面程序的输出将是-

90

命名变量

如上所述,变量名必须以大写开头,让我们以小写声明的变量为示例

-module(helloLearnfk). 
-export([start/0]). 

start() -> 
   X=40, 
   Y=50, 
   result=X + Y, 
   io:fwrite("~w",[Result]).

如果尝试编译上述程序,则会出现以下编译时错误。

helloLearnfk.erl:8: variable 'Result' is unbound

其次,所有变量只能分配一次。让我们举个示例,多次分配一个变量。

-module(helloLearnfk). 
-export([start/0]). 

start() -> 
   X=40, 
   Y=50, 
   X=60, 
   io:fwrite("~w",[X]).

如果您尝试编译上述程序,则会收到以下编译时错误。

helloLearnfk.erl:6: Warning: variable 'Y' is unused
helloLearnfk.erl:7: Warning: no clause will ever match
helloLearnfk.erl:7: Warning: the guard for this clause evaluates to 'false'

输出变量

在本节中,我们将讨论如何使用打印变量的各种功能。

io:fwrite函数

您应该已经在以上所有程序中看到了此(io:fwrite), fwrite 函数是io模块或Erlang的一部分,可用于在程序中输出变量的值。

-module(helloLearnfk). 
-export([start/0]). 

start() -> 
   X=40.00, 
   Y=50.00, 
   io:fwrite("~f~n",[X]), 
   io:fwrite("~e",[Y]).

上面程序的输出将是-

40.000000
5.00000e+1

关于上述程序,应注意以下几点。

  • ~    表示需要对输出进行格式化。

  • ~f  参数是一个浮点数,缺省精度为6,且不能小于1。

  • ~n  换行。

  • ~e  参数是一个浮点数,缺省精度为6,且不能小于2。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

许式伟的架构课 -〔许式伟〕

性能工程高手课 -〔庄振运〕

软件设计之美 -〔郑晔〕

实用密码学 -〔范学雷〕

如何讲好一堂课 -〔薛雨〕

遗留系统现代化实战 -〔姚琪琳〕

Vue 3 企业级项目实战课 -〔杨文坚〕

AI绘画核心技术与实战 -〔南柯〕

互联网人的数字化企业生存指南 -〔沈欣〕

好记忆不如烂笔头。留下您的足迹吧 :)