typestar

Caracteres y bytes en Rust

Un char es un escalar Unicode; los bytes son otra cosa, y Rust los mantiene aparte.

fn main() {
    let word = "Rust!";
    println!("{} chars, {} bytes", word.chars().count(), word.len());

    for c in word.chars() {
        if c.is_alphabetic() {
            print!("{}", c.to_ascii_uppercase());
        }
    }
    println!();

    let digit = '7';
    println!("{:?}", digit.to_digit(10));
}

Cómo funciona

  1. chars() recorre escalares, bytes() recorre los bytes UTF-8.
  2. is_alphabetic y compañía clasifican un char.
  3. to_ascii_uppercase esquiva por completo la cuestión del locale.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
14
Caracteres a escribir
257
Tokens
90
Ritmo de tres estrellas
80 tpm

Al ritmo de tres estrellas de 80 tokens por minuto, este intento toma unos 68 segundos.

Escribe este fragmento

Paso 6 de 6 en Variables y tipos; paso 6 de 39 en Fundamentos del lenguaje.

← Anterior Siguiente →