If / else que devuelven valores

聽聽聽聽聽聽聽聽En Zig, un bloque 聽if/else聽puede devolver un valor聽para asignarlo a una variable聽o constante. Eso s铆 - debe usarse en forma de expresi贸n simple, sin llaves {}聽para la definici贸n de los bloques:

if_else_return.zig

conststd=@import("std");

constprint=std.debug.print;

pubfnmain()void{

聽 聽constn_age=18;

聽 聽consts_response=if(n_age<18)"Menor de edad"else"Mayor de edad";

聽 聽print("Eres {s}\n",.{s_response});

}

$ zig run if_else_return.zig

Eres Mayor de edad

Cuando devolvemos un valor desde un if/else, resulta muy 煤til para asignar un valor en funci贸n de una condici贸n de manera compacta.

En este ejemplo, el valor asignado a s_response聽se decide seg煤n la condici贸n y queda como una constante inmutable. Inmutable聽quiere decir que no se puede cambiar y es una buena pr谩ctica de programaci贸n: muchas veces, el hecho de no poder cambiar el valor de un identificador despu茅s de asignarlo nos evita bugs dif铆ciles de detectar.

Condiciones anidadas
Bloques etiquetados
漏 2025 Zen of Zig