Sortie Rust vers la ligne de commande
Avant d'apprendre formellement le langage Rust, nous devons d'abord apprendre à afficher un texte sur la ligne de commande. C'est une compétence presque essentielle avant d'apprendre n'importe quel langage, car l'affichage sur la ligne de commande est presque le seul moyen pour les programmes d'exprimer des résultats pendant la phase d'apprentissage du langage.
Dans le programme Hello, World précédent, nous avons probablement déjà montré à tout le monde comment afficher des chaînes de caractères, mais ce n'est pas exhaustif. Vous vous demandez peut-être pourquoi après println dans println!( "Hello World") il y a un autre!symbole ? Est-ce que chaque fonction Rust a besoin d'un point d'exclamation après elle ? Évidemment non. println n'est pas une fonction, mais une règle de macro. Il n'est pas nécessaire d'approfondir ce qu'est une règle de macro ; elle sera présentée dans un chapitre ultérieur, et cela n'affecte pas l'apprentissage à venir.
Rust dispose principalement de deux façons d'afficher du texte :println!()etprint!(). Ces deux « fonctions » sont toutes deux des méthodes pour afficher des chaînes de caractères sur la ligne de commande. La seule différence est que la première ajoute un caractère de nouvelle ligne à la fin de la sortie. Lorsqu'on utilise ces deux « fonctions » pour afficher des informations, le premier paramètre est une chaîne de format, suivi d'une série de paramètres variables, correspondant aux « espaces réservés » dans la chaîne de format. C'est très similaire à la fonction printf du langage C. Cependant, les espaces réservés dans la chaîne de format de Rust ne sont pas"% + lettre"sous la forme, mais plutôt une paire de{}。
Exemple : fichier example.rs
let a = 12;
println!("a is {}", a);
}
Utilisez la commanderustcpour compiler le fichier example.rs :
$ rustc example.rs # 编译 example.rs 文件
Après compilation, il généreraexampleun fichier exécutable :
$ ./example # 执行 example
La sortie du programme ci-dessus est :
a is 12
Si je veux afficher a deux fois, ne devrais-je pas écrire :
println!("a is {}, a again is {}", a, a);
En fait, il existe une meilleure façon de l'écrire :
println!("a is {0}, a again is {0}", a);
Dans{}, entre eux, vous pouvez mettre un nombre, qui traitera les paramètres variables suivants comme un tableau auquel accéder, avec des indices commençant à 0.
Si vous voulez afficher{ou}que devez-vous faire ? Dans la chaîne de format, en échappant{{et}}pour représenter respectivement { et }. Mais les autres caractères d'échappement courants sont identiques à ceux du langage C, tous sous la forme commençant par une barre oblique inverse.
fn main() {
println!("{{}}");
}
La sortie du programme ci-dessus est :
{} Autres extensions