在Storing value of a pointer in another pointer in Rust中,建议您可以在Rust中的原始指针中修改值,而无需将其转换为引用(添加了强调):
如何才能做到这一点?
它是否违反了可变的别名规则,如果不违反,为什么不这样做呢?
最佳答案
您可以通过取消引用并直接将其存储到原始指针中来写入值:
unsafe fn example(ptr: *mut u8) {
*ptr = 42;
}
fn main() {
let mut a = 0;
unsafe { example(&mut a); }
println!("{}", a);
}
关于rust - 如何在不将其转换为引用的情况下修改原始指针中的值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49163824/