Function std::ptr::slice_from_raw_parts_mut

1.42.0 (const: unstable) · source ·
pub fn slice_from_raw_parts_mut<T>(data: *mut T, len: usize) -> *mut [T]
Expand description

执行与 slice_from_raw_parts 相同的功能,但返回的是原始可变切片,而不是原始的不可变切片。

有关更多详细信息,请参见 slice_from_raw_parts 的文档。

此函数是安全的,但实际上使用返回值是不安全的。 有关切片的安全要求,请参见 slice::from_raw_parts_mut 的文档。

Examples

use std::ptr;

let x = &mut [5, 6, 7];
let raw_pointer = x.as_mut_ptr();
let slice = ptr::slice_from_raw_parts_mut(raw_pointer, 3);

unsafe {
    (*slice)[2] = 99; // 在切片中的索引处分配值
};

assert_eq!(unsafe { &*slice }[2], 99);
Run