Ir al contenido principal

Tipos de datos en ZigLang

Continuando con la serie de ZigLang ahora veremos los tipos de datos.

Tipos de datos primitivos

Tenemos los primitivos (tipos básicos):

  • i8.
  • u8. 
  • i16. 
  • u16. 
  • i32.
  • u32.
  • i64.
  • u64. 
  • isize. 
  • usize.
  • f16. 
  • f32. 
  • f64. 
  • bool. 
  • type. 
  • anyerror. 
  • entre otros más.

Ejemplo 1. Este programa viene en la documentación oficial.

string_literals.zig

const print = @import("std").debug.print;
const mem = @import("std").mem; // will be used to compare bytes

pub fn main() void {
    const bytes = "hello";
    print("{}\n", .{@TypeOf(bytes)}); // *const [5:0]u8
    print("{d}\n", .{bytes.len}); // 5
    print("{c}\n", .{bytes[1]}); // 'e'
    print("{d}\n", .{bytes[5]}); // 0
    print("{}\n", .{'e' == '\x65'}); // true
    print("{d}\n", .{'\u{1f4a9}'}); // 128169
    print("{d}\n", .{''}); // 128175
    print("{u}\n", .{'⚡'});
    print("{}\n", .{mem.eql(u8, "hello", "h\x65llo")}); // true
    print("{}\n", .{mem.eql(u8, "", "\xf0\x9f\x92\xaf")}); // also true
    const invalid_utf8 = "\xff\xfe"; // non-UTF-8 strings are possible with \xNN notation.
    print("0x{x}\n", .{invalid_utf8[1]}); // indexing them returns individual bytes...
    print("0x{x}\n", .{""[1]}); // ...as does indexing part-way through non-ASCII characters
}

Salida:

$ zig build-exe string_literals.zig
$ ./string_literals
*const [5:0]u8
5
e
0
true
128169
128175

true
true
0xfe
0x9f

Ejemplo 2. Mostrar algunas variables primitivas.

variables.zig

const std = @import("std");

pub fn main() void {
    std.debug.print("\t [   Variables en ZigLang ]\n", .{});
    var entero: i32 = undefined;
    var flotante:f128 = undefined;
    var verdadero:bool = undefined;
    entero = 325;
    flotante = 12.65;
    verdadero = true;
    const cadena = "Murcielago";
    std.debug.print("Número entero: {d}\n", .{entero});
    std.debug.print("Número flotante: {d}\n", .{flotante});
    std.debug.print("Cadena: {c}\n", .{cadena});
    std.debug.print("Booleano: {}\n", .{verdadero});
}

El programa anterior:

  • Declara tres variables de tipo: i32 (entero), f128 (flotante) y bool (booleano).
  • Además de una constante de tipo cadena de caracteres.
  • Al final muestra en pantalla el valor de cada una.

Compilamos y ejecutamos:

$ zig build-exe variables.zig
$ ./variables

Salida:

[   Variables en ZigLang ]
Número entero: 325
Número flotante: 12.65
Cadena: { M, u, r, c, i, e, l, a, g, o }
Booleano: true

Si quieres saber más, aquí está un link hacia la documentación oficial:

https://ziglang.org/documentation/master/

Continuaremos más adelante.

Enlaces:

https://ziglang.org/

Comentarios

Entradas populares de este blog

Odin language: el lenguaje de programación orientado a datos para un desarrollo de software sensato

En esta serie sobre lenguajes de programación hablamos de Odin , un lenguaje orientado a datos. Un nuevo lenguaje de programación que nos podrá recordar a lenguajes como C++, Python, Golang o hasta Rust. Instalación (Windows): 1 2 3 4 $ git clone https://github.com/odin-lang/Odin $ cd Odin $ git pull $ build.bat release Debemos asegurarnos de crear la variable de entorno: Nombre: ODIN_HOME Valor: C:\Users\HP\Documents\pruebasOdin\Odin Ejemplo 1. Como primer programa tendremos al clásico "Hola, mundo". holamundo.odin package holamundo import " core:fmt " main : : proc ( ) { fmt . println ( " ¡Hola, mundo desde Odin! " ) } Construimos: $ odin build holamundo . odin - file Ejecutamos: $ holamundo .exe Recordar que si usamos Visual Studio Code podemos instalar el plugin de Odin Language: https://marketplace.visualstudio.com/items?itemName=DanielGavin.ols Ejemplo 2. Programa que muestre las variables que pod...

Programación Windows Batch (CMD) parte 3

Crear ciclos para efectuar operaciones tediosas nos ahorrará tiempo para realizar otras tareas. En está ocasión veremos ciclos con FOR . ¿Cuál es la síntaxis de bucle FOR en Windows Batch? Si está dentro de un archivo *.bat : FOR %%variable IN (seq) DO operaciones Si lo ejecutamos en una terminal: FOR %variable IN (seq) DO operaciones Ejemplo 1 . Recorrer una secuencia de números del 0 al 5: recorrer.bat @ echo off FOR %%i in ( 0 1 2 3 4 5 ) DO echo Hola no. %%i pause Nos imprimirá en pantalla: Hola no. 0 Hola no. 1 Hola no. 2 Hola no. 3 Hola no. 4 Hola no. 5 ¿Puedo usar contadores? Si, se pueden usar. Ejemplo 2 . Uso de contadores: contador.bat @ echo off set numeros = 1 2 3 4 5 6 7 8 9 10 set cont = 0 for %%a in ( %numeros% ) do ( echo Hola no. %%a :: Contador set /a cont+ = 1 ) echo Total: %cont% Este código nos imprimirá, además de los mensajes Hola no. 0 ..., el total de valores conta...

z/OS, ¿Qué es? y ¿Cuáles son sus herramientas?

  En este post veremos las herramientas de z/OS de IBM. z/OS es un sistema operativo de mainframe desarrollado por IBM.  Es parte de la serie IBM z Systems (anteriormente conocida como System z), que se utiliza en los sistemas mainframe de IBM. z/OS es uno de los sistemas operativos más utilizados en el mundo empresarial para ejecutar aplicaciones críticas y procesar grandes volúmenes de datos. Características clave de z/OS: Escalabilidad : z/OS es conocido por su capacidad para manejar grandes cargas de trabajo y escalabilidad vertical, lo que permite agregar recursos de hardware para satisfacer las demandas de procesamiento. Confiabilidad y disponibilidad : z/OS está diseñado para ofrecer alta disponibilidad y confiabilidad. Incorpora características como redundancia y recuperación ante fallas para garantizar la continuidad de las operaciones. Seguridad : Proporciona una amplia gama de funciones de seguridad, como autenticación, autorización y auditoría, para proteger los...