rustbook/slices/src/main.rs

38 lines
751 B
Rust

fn main() {
let my_string = String::from("Hello world");
let word = find_first(&my_string[0..6]);
println!("{word}");
let word = find_first(&my_string[..]);
println!("{word}");
let word = find_first(&my_string);
println!("{word}");
let my_literal_string = "hello world";
let word = find_first(&my_literal_string[0..6]);
println!("{word}");
let word = find_first(&my_literal_string[..]);
println!("{word}");
let word = find_first(&my_literal_string);
println!("{word}");
}
fn find_first(words: &str) -> &str {
let bytes = words.as_bytes();
for (i, &item) in bytes.iter().enumerate() {
if item == b' ' {
return &words[..i];
}
}
&words[..]
}