Caracteres de Escape
São aqueles que começam com \ e são usados para representar caracteres especiais que não podemos (ou não devemos) digitar literalmente no código, como quebras de linha, tabulações, aspas dentro de strings, etc.
\n
#![allow(unused)]
fn main() {
// quebra de linha
println!("Qual é o seu nome?\nMeu nome é Alice!");
}
\'
#![allow(unused)]
fn main() {
// aspas simples
println!("Qual é o seu nome?\'Meu nome é Alice!\'");
}
\"
#![allow(unused)]
fn main() {
// aspas duplas
println!("Qual é o seu nome?\"Meu nome é Alice!\"");
}
\\
#![allow(unused)]
fn main() {
// barra invertida
println!("Qual é o seu nome?\\Meu nome é Alice!\\");
}
\t
#![allow(unused)]
fn main() {
// tabulação horizontal (tab)
println!("Qual é o seu nome?\tMeu nome é\tAlice!");
}
r
#![allow(unused)]
fn main() {
// raw string: trata a barra invertida literalmente, sem processar sequências de escape
println!(r"C:\Users\Alice\Documents");
}
r#...#
#![allow(unused)]
fn main() {
// raw strings (string literal/sem processamento de escape)
println!(r#"
Qual é o seu nome?
Meu nome é "Alice!"
"#);
}
\x
#![allow(unused)]
fn main() {
// caractere ASCII de 7 bits - 0x00 e 0x7F
println!("\x53\x6E\x6F\x6F\x70\x79\x21");
}
\u{...}
#![allow(unused)]
fn main() {
// unicode (permite usar emojis ou caracteres especiais)
println!("(\u{25D5}\u{2323}\u{25D5})");
}
\r
#![allow(unused)]
fn main() {
// move o cursor de volta para o início da linha sem avançar para a próxima
print!("Carregando ...\r");
}
Comumente usado para animações de terminal:
\ro efeito pode variar conforme o terminal ou sistema operacional.