您現在的位置是:網站首頁>ErlangErlang變量聲明

Erlang變量聲明

宸宸2025-01-21Erlang122人已圍觀

在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.0000005.00000e+1

關於上述程序,應注意以下幾點。

  • ~    表示需要對輸出進行格式化。

  • ~f  蓡數是一個浮點數,缺省精度爲6,且不能小於1。

  • ~n  換行。

  • ~e  蓡數是一個浮點數,缺省精度爲6,且不能小於2。


上一篇:ErlangShell腳本

下一篇:Erlang環境安裝

本欄推薦

標籤雲

我的名片

網名:星辰

職業:程式師

現居:河北省-衡水市

Email:[email protected]