English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Em Erlang, todas as variáveis estão ligadas à instrução ‘=’. Todas as variáveis precisam começar com uma letra maiúscula. Em outros linguagens de programação, o símbolo ‘=’ é usado para atribuição, mas não é aplicável ao Erlang. Como mencionado anteriormente, as variáveis são definidas usando a instrução ‘=’.
Uma coisa a notar no Erlang é que as variáveis são imutáveis, o que significa que para mudar o valor de uma variável, é necessário destruí-la e criá-la novamente.
O capítulo anterior introduziu as seguintes variáveis básicas no Erlang-
Numbers− Usado para representar números inteiros ou de ponto flutuante. Por exemplo:10.
Boolean − Isso representa um valor booleano, que pode ser true ou false.
Bit String− O bit string é um tipo de dados que armazena uma área de memória não tipificada. Por exemplo: << 40,50 >>。
Tuple− Um tupla é um tipo de dados composto com um número fixo de itens. Por exemplo: {40,50}。
Map− O mapa é um tipo de dados composto com um número variável de chaves-− Um mapa é um tipo de dados composto com valores associados. Cada par de chave-valor em um mapa é chamado de par de associação. Por exemplo: {type => person, age => 25}。
List− A lista é um tipo de dados composto com um número variável de itens. Por exemplo: [40,40]。
A sintaxe geral para definir variáveis é a seguinte-
var-name = var-value
Onde,
var-name − Isso é o nome da variável.
var-value − Isso está ligado ao valor da variável.
Aqui está um exemplo de declaração de variável-
-module(helloworld). -export([start/0]). start() -> X = 40, Y = 50, Result = X + Y, io:fwrite("~w",[Result]).
No exemplo acima, temos2uma variável, uma ligada ao valor40 de X, a outra é ligada ao valor50 de Y. Outra variável chamada Result está ligada à adição de X e Y.
A saída do programa acima será
90
Como mencionado acima, o nome da variável deve começar com uma letra maiúscula. Vamos usar como exemplo uma variável declarada em minúsculas.
-module(helloworld). -export([start/0]). start() -> X = 40, Y = 50, result = X + Y, io:fwrite("~w",[Result]).
Se tentar compilar o programa acima, aparecerá o seguinte erro de compilação.
helloworld.erl:8: a variável 'Result' não está definida
Em segundo lugar, todas as variáveis só podem ser alocadas uma vez. Vamos dar um exemplo de uma variável alocada mais de uma vez.
-module(helloworld). -export([start/0]). start() -> X = 40, Y = 50, X = 60, io:fwrite("~w",[X]).
Se você tentar compilar o programa acima, receberá o seguinte erro de compilação.
helloworld.erl:6: Aviso: a variável 'Y' não está em uso helloworld.erl:7: Aviso: nenhuma cláusula coincidirá helloworld.erl:7: Aviso: a guarda para essa cláusula avaliou como 'falso'
Nesta seção, discutiremos como usar as várias funcionalidades de impressão de variáveis.
Você deve ter visto isso em todos os programas acima (io:fwrite).fwriteA função é parte do módulo "io" ou do Erlang e pode ser usada para outputar o valor de uma variável no programa.
Os seguintes exemplos mostram mais parâmetros que podem ser usados com a instrução fwrite.
-module(helloworld). -export([start/0]). start() -> X = 40.00, Y = 50.00, io:fwrite("~f~n",[X]), io:fwrite("~e",[Y]).
A saída do programa acima será-
40.000000 5.00000e+1
A respeito do programa acima, devem ser observados os seguintes pontos.
~ −Este caractere indica que o formato de saída deve ser formatado.
~f−O parâmetro é um número flutuante, escrito como [-] ddd.ddd, onde precision é o número de dígitos após o ponto decimal. A precisão padrão é6E não pode ser menor que1.
~n−printlnIsso imprime na nova linha.
~e−O parâmetro é um número flutuante, escrito como [-] d.ddde + -ddd, onde precision é o número de dígitos a serem escritos. A precisão padrão é6E não pode ser menor que2.