› Foros › Multiplataforma › Desarrollo
Aquí vemos las diferentes formas en que se puede asignar un “tipo” a una variable.
a = "Ejemplo" -- a almacena string ( o cadena)
b = 1.23 -- b almacena número...
b = nil -- b almacena nil
a = 3 -- a almacena número
Nota: Algo que esté comentado en LUA se pone como “- - “ ( sin las comillas ).
Local a
...
a = 3
nil: Los valores “nil” indican la ausencia de valor, es decir valor nulo. También es interpretado como valor Booleano “False”.
Boolean: Valor Booleano, pudiendo ser “False” o “True”.
Number: valor numérico. No diferencia entre valor Entero y valor Real, solo existe un tipo para representar los números.
String: valor cadena de caracteres. Una constante string puede ser delimitada por comillas simples ( ‘...‘ )ó por comillas dobles ( “...” ) ó por doble corchetes ( [[...]] ).
Table: Vector asociativo.
Function: función escrita en LUA o escrita en C registrada en LUA.
Userdata: dato de host, representado pro un puntero void*;
Thread: Línea de ejecución.
+ ( suma )
- ( resta )
* ( multiplicación )
/ ( división )
^ ( potencia )
- ( negación )
> ( mayor que... )
< ( menor que... )
>= ( mayor o igual que... )
<= ( menor o igual que... )
== ( igual que... ) [ es más bien una comparación]
~= ( diferente que... ) [ej. mientras sea diferente a "True”]
And ( y )
Or ( ó )
Not ( negación )
“. .” Operador para concatenar string. (sin comillas)
x = v or w
y = a and b or c
La primera expresión indica que “x” tomará el valor de V, siempre y cuando ésta sea verdadera, en caso contrario será asignada W.
En la segunda expresión, debería ser leída de la siguiente forma: y = a ? b : c, en C, desde que b no resulte falso
If expresión then
...
end
end
If expresión then
...
else
...
end
If expresión then
...
else if expresión2 then
...
else
...
end
While expresión do
...
end
repeat
...
until expresión
For var = expr_inicial, expr_final, expr_incremento do
...
end
En esta función, la variable “var” será automáticamente tomada como variable de tipo local. Las expresiones inicial, final e incremento son estimadas una única vez antes del inicio de la ejecución del bloque. Si el valor de la expresión incremento es omitido, se tomará siempre el valor de 1.
For line in io.lines() do
io.write(line,"\n")
end
La función realizaría lo siguiente. Primero comprobaría que existe datos en el fichero, es decir, que io.lines() ==false, con lo cual, si no lo es, ejecuta la línea siguiente, la cual coge la siguiente parte del archivo pedido, lo guarda en la variable “Line”, la línea se cogerá hasta que ésta sea final de línea, indicado por el parámetro “\n”
Última Actualización: 25.Agosto.07
El Compendio aún no está terminado, esto es solo la punta del icerberg.
Me gustaría que la gente que entienda algo de LUA me ayudara a realizar una tarea tan larga, pues me estoy fijando de un manual que he encontrado por internet, está escrito en Portugues o Brasileño, no lo se aun, y la verdad es un coñazo traducir y realizar las cosas, para mi entender, que se simplifique y se entiedan (valga la redundancia) mejor.
Enlace del manual en Portugues/Brasileño:
>> Aquí <<