Calculando la longitud de una cadena

Rust:
Calculando la longitud de una cadena

Cómo hacerlo:

Ejemplos claros para obtener la longitud de una cadena en Rust:

fn main() {
    let mi_cadena = "Hola Mundo";
    println!("La longitud es: {}", mi_cadena.len());
}

Salida:

La longitud es: 10

Si la cadena contiene caracteres Unicode, ten en cuenta que .len() devuelve bytes, no caracteres:

fn main() {
    let unicode = "¡Hola!";
    println!("La longitud en bytes es: {}", unicode.len());
}

Salida:

La longitud en bytes es: 7

Profundización

Históricamente, medir una cadena en lenguajes como C era tedioso, contando hasta un carácter nulo. Rust simplifica este proceso pero su enfoque es en bytes, no en caracteres Unicode (escalares). Hay alternativas como char_count si necesitas contar caracteres:

fn main() {
    let unicode = "¡Hola!";
    let caracteres: Vec<char> = unicode.chars().collect();
    println!("La cantidad de caracteres Unicode es: {}", caracteres.len());
}

Salida:

La cantidad de caracteres Unicode es: 5

La longitud en bytes se utiliza por defecto ya que Rust está diseñado para ser seguro y rápido en operaciones con memoria. Esto implica entender que String en Rust es como un Vec<u8> bajo el capó.

Ver También