Como iterar sobre uma string caractere por caractere (por caracteres Unicode) em Rust?
Olá a todos! Acabei de começar a estudar Rust e tive um problema com iteração sobre strings. Em outras linguagens (como Python ou C++), estou acostumado que uma string é um array de caracteres e posso simplesmente percorrer por índice ou usar um loop for.
Mas em Rust é mais complicado. Aqui está o que tentei:
```rust
let s = "Привет, мир!";
for c in s {
println!("{}", c);
}
```
O compilador dá um erro: `error[E0277]: the trait bound \`str: Iterator\` is not satisfied`. Eu entendo que `str` não é um iterador, mas como obter cada caractere então?
Também tentei acessar por índice:
```rust
let s = "Привет";
println!("{}", s[0]); // Erro!
```
E novamente um erro: strings em Rust não podem ser indexadas diretamente porque caracteres Unicode podem ocupar diferentes quantidades de bytes.
No final, eu