Vecteurs et chaînes de caractères

VecteursChaînes de caractères
Type pour la grosse structure où on peut changer la tailleVec<T>String
Type vue mémoire (taille, pointeur)slice<T>str

str

#![allow(unused)]
fn main() {
let x: &str = "Bonjour";
println!("{}", s);
}

Attention, on ne peut pas écrire *s car *s n'a pas de taille connue à la compilation (à la compilation on ne sait pas sur combien de caractères le pointeur pointe).

String

  • Pour transformer une str en String : String::from
  • Pour avoir la str totale d'un String : on déréférence !
#![allow(unused)]
fn main() {
let x: &str = "Bonjour";
let s: String = String::from(x);
let y: &str = &s;
println!("{}", s);
}