trpl-zh-cn/listings/ch04-understanding-ownership/no-listing-19-slice-error/src/main.rs

24 lines
404 B
Rust
Raw Normal View History

2022-02-06 16:43:51 +08:00
fn first_word(s: &String) -> &str {
let bytes = s.as_bytes();
for (i, &item) in bytes.iter().enumerate() {
if item == b' ' {
return &s[0..i];
}
}
&s[..]
}
// ANCHOR: here
fn main() {
let mut s = String::from("hello world");
let word = first_word(&s);
2023-01-17 11:38:33 +08:00
s.clear(); // 错误!
2022-02-06 16:43:51 +08:00
println!("the first word is: {}", word);
}
// ANCHOR_END: here