Argumentos de CLI
Los argumentos de línea de comandos se acceden mediante get_args(), que devuelve el array argv completo como un Array de String. El índice 0 es siempre la ruta del programa, y los índices siguientes contienen los argumentos pasados por el usuario.
Código
// Argumentos de CLI: get_args() retorna un Array de Strings (argv)
fn main() -> int {
let argv: Array = get_args()
let total: int = argv.length()
print("Total de argumentos: " + int_to_string(total))
var i: int = 0
while i < total {
let arg: String = argv[i]
if i == 0 {
print(" [" + int_to_string(i) + "] programa: " + arg)
} else {
print(" [" + int_to_string(i) + "] arg: " + arg)
}
i = i + 1
}
if total < 2 {
print("(sin argumentos — ejecutar con: ./programa arg1 arg2)")
}
return 0
}
Salida
Total de argumentos: 3 [0] programa: ./programa [1] arg: arg1 [2] arg: arg2
Explicación
get_args() es una función integrada que envuelve el array argv de C en un Array de Nyx. A diferencia de C, no necesitas argc por separado — simplemente llama a .length() sobre el array devuelto. El primer elemento (índice 0) es siempre la ruta del ejecutable tal como la reporta el sistema operativo.
El bucle while con una variable de índice manual es el patrón de iteración estándar cuando necesitas el índice junto con el valor. Para los casos en los que solo te interesan los valores, los métodos de iterador de Nyx como .map y .filter son más ergonómicos.
La guarda al final detecta cuando no se proporcionaron argumentos del usuario e imprime una sugerencia de uso. Construir herramientas de CLI en Nyx normalmente combina get_args() con el módulo std/cli para el parseo de flags, pero este ejemplo muestra la base cruda.