【发布时间】:2021-03-20 19:40:07
【问题描述】:
这种锈完全符合我的要求,但我不会做太多锈,我觉得这可以做得更好 - 就像可能在一行中一样。任何人都可以提示更“生锈惯用”的方式吗?
fn fill_from_str(bytes: &mut [u8], s: &str) {
let mut i=0;
for b in s.as_bytes() {
bytes[i] = *b;
i=i+1;
}
}
fn main() {
let mut bytes: [u8; 10] = [0; 10];
fill_from_str(&mut bytes,"hello");
println!("{:?}",bytes);
}
【问题讨论】:
-
请注意,如果字符串太长,您提供的示例代码将溢出缓冲区,如果最后一个字符是多字节编码但不完整,则会在代码点之间切入。
-
没关系,输入已检查。
标签: rust