rust 如何有效地将字符串的内容复制到数组中?

qzwqbdag  于 2023-03-12  发布在  其他
关注(0)|答案(1)|浏览(172)

假设我有一个静态字符串"foo"和一个足够长的可变数组let mut buf = [0u8; 16]
如何最有效地更新buf以包含字符串的字节?我可以使用.bytes()将字符串作为字节进行迭代,并逐个更新缓冲区中的位置,但感觉肯定有更简单的方法。

cqoc49vn

cqoc49vn1#

使用copy_from_slice

buf[..string.len()].copy_from_slice(string.as_bytes());

另一个可能有用的东西是,你可以直接用b创建一个字符串类型的字节切片。

const SLICE: &[u8] = b"hello";

也可以通过取消引用来创建数组。

const ARR: [u8; 5] = *b"hello";

相关问题