typestar

Anchos de entero en Zig

El ancho es parte del tipo: u8 e i32, u64 — y u3 si tres bits es lo que quieres decir.

const std = @import("std");

pub fn main() void {
    // Widths are part of the type: u8, i32, u64 -- even u3 exists.
    const crew: u8 = 12;
    const depth: i32 = -180;
    const grains: u64 = 4_294_967_296;
    const die_faces: u3 = 6;

    std.debug.print("crew {d}, depth {d} m\n", .{ crew, depth });
    std.debug.print("grains {d}, die faces {d}\n", .{ grains, die_faces });
    std.debug.print("a u3 tops out at {d}\n", .{std.math.maxInt(u3)});
}

Cómo funciona

  1. u8, i32 y u64 dimensionan la tripulación, la profundidad y los granos exactos.
  2. u3 es un tipo real que guarda de 0 a 7 — los anchos arbitrarios son legales.
  3. std.math.maxInt(u3) le pregunta al tipo mismo por su techo.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
13
Caracteres a escribir
423
Tokens
111
Ritmo de tres estrellas
70 tpm

Al ritmo de tres estrellas de 70 tokens por minuto, este intento toma unos 95 segundos.

Escribe este fragmento

Paso 3 de 3 en Valores; paso 3 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →