English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Salida de Rust a la línea de comandos

Antes de aprender el lenguaje Rust, primero necesitamos aprender cómo mostrar un texto en la línea de comandos, que es una habilidad esencial antes de aprender cualquier lenguaje, ya que la salida a la línea de comandos es la única manera de expresar los resultados del programa en la fase de aprendizaje del lenguaje.

En el programa Hello, World anteriormente mencionado, se les ha explicado aproximadamente cómo se realiza la salida de cadenas de caracteres, pero no de manera exhaustiva. Puede que se pregunten por qué hay un símbolo de exclamación ! después de println en println!("Hello World"), ¿es que todos los funciones de Rust deben incluir un signo de exclamación? Por supuesto que no. println no es una función, sino una regla de macro. Aquí no es necesario profundizar más sobre lo que es una regla de macro, ya que se abordará en capítulos posteriores, y no afecta el aprendizaje del siguiente tema.

Los métodos de salida de texto en Rust主要有 dos: println!() y print!(). Ambas "funciones" son métodos para salida de cadenas a la línea de comandos, la diferencia radica en que la primera agrega un carácter de nueva línea al final de la salida. Al usar estas "funciones" para salida de información, el primer parámetro es la cadena de formato y los parámetros variables que siguen corresponden a los "símbolos de reemplazo" en la cadena de formato, lo que es muy similar a la función printf en C. Sin embargo, los símbolos de reemplazo en las cadenas de formato de Rust no son "%"} + No es en forma de "letra" {}, sino en un par de {}.

fn main() { 
    let a = 12; 
    println!("a is {}", a); 
}

El resultado de salida del programa es:

a is 12

Si quiero escribir dos veces a, ¿no debería escribirse así?

println!("a is {}, a again is {}", a, a);

En realidad, hay una mejor manera de escribirlo:

println!("a is {0}, a again is {0}", a);

Se puede poner un número entre {} para que después se acceda a los argumentos variables como un array, comenzando con el índice 0.

Si quiero salida { o } ¿Qué hacer? En la cadena de formato se puede usar {{ y }} Escapar los caracteres { y }. Pero otros caracteres de escape comunes tienen el mismo formato que los de C, que comienzan con una barra invertida.

fn main() { 
    println!("{{}}"); 
}

El resultado de salida del programa es:

{}