English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En Erlang, todas las variables están vinculadas con la declaración ‘=’. Todas las variables deben comenzar con una letra mayúscula. En otros lenguajes de programación, el símbolo ‘=’ se utiliza para asignar valores, pero no es aplicable a Erlang. Como se mencionó anteriormente, las variables se definen mediante la declaración ‘=’.
En Erlang, algo que hay que tener en cuenta es que las variables son inmutables, lo que significa que para cambiar el valor de una variable, es necesario destruirla y crearla de nuevo.
El capítulo anterior introdujo los siguientes tipos básicos de variables en Erlang-
Numbers- Se utiliza para representar enteros o números de coma flotante. Por ejemplo:10.
Boolean - Esto representa un valor booleano, que puede ser true o false.
Cadena de bits- Se utiliza la cadena de bits para almacenar áreas de memoria sin tipo. Por ejemplo:<< 40,50 >>。
Tuple- El tupla es un tipo de datos compuesto con un número fijo de elementos. Por ejemplo: {40,50}。
Map- El mapa es un tipo de datos compuesto con un número variable de claves-- La asociación de clave y valor es un tipo de datos compuesto con un número variable de claves. Por ejemplo: {type => person,age => 25}。
List- La lista es un tipo de datos compuesto con un número de elementos variable. Por ejemplo: [40,40]。
La sintaxis general para definir variables es la siguiente-
var-name = var-value
donde,
var-name - Esto es el nombre del variable.
var-value - Esto es el valor al que está asociado el variable.
A continuación, se muestra un ejemplo de declaración de variables.-
-module(helloworld). -export([start/ start() -> X = 40, Y = 50, Result = X + Y, io:fwrite("~w",[Result]).
En el ejemplo anterior, tenemos2una variable, una está asociada al valor40 de X, la otra está asociada al valor50 de Y. Otra variable llamada Result está asociada a la suma de X y Y.
La salida del programa anterior será
90
Como se mencionó anteriormente, los nombres de las variables deben comenzar con una letra mayúscula. Vamos a dar un ejemplo de una variable declarada en minúsculas.
-module(helloworld). -export([start/ start() -> X = 40, Y = 50, result = X + Y, io:fwrite("~w",[Result]).
Si intentas compilar el programa anterior, se producirá el siguiente error de compilación.
helloworld.erl:8: la variable 'Result' no está definida
En segundo lugar, todas las variables solo pueden asignarse una vez. Vamos a dar un ejemplo de una variable asignada más de una vez.
-module(helloworld). -export([start/ start() -> X = 40, Y = 50, X = 60, io:fwrite("~w",[X]).
Si intentas compilar el programa anterior, recibirás los siguientes errores de compilación.
helloworld.erl:6: Advertencia: la variable 'Y' no se utiliza helloworld.erl:7: Advertencia: ninguna cláusula coincidirá nunca helloworld.erl:7: Advertencia: el guardia de esta cláusula evalúa a 'false'
En esta sección, discutiremos cómo utilizar las diversas funciones de impresión de variables.
Ya deberías haber visto este (io:fwrite) en todos los programas anteriores.fwriteLa función es parte del módulo "io" o de Erlang y se puede usar para imprimir el valor de una variable en el programa.
Los siguientes ejemplos muestran más parámetros que se pueden usar con la declaración fwrite.
-module(helloworld). -export([start/ start() -> X = 40.00, Y = 50.00, io:fwrite("~f~n",[X]), io:fwrite("~e",[Y]).
La salida del programa anterior será-
40.000000 5.00000e+1
Sobre el programa anterior,应注意以下几点。
~ −Este carácter indica que se debe realizar algún formato en la salida.
~f−El parámetro es un número flotante, escrito como [-] ddd.ddd,donde precision es el número de dígitos decimales. La precisión predeterminada es6,y no puede ser menor que1.
~n−printlnEsto es imprimir en una nueva línea.
~e−El parámetro es un número flotante, escrito como [-] d.ddde + -ddd,donde precision es el número de dígitos escritos. La precisión predeterminada es6,y no puede ser menor que2.