當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Rust slice_from_raw_parts_mut用法及代碼示例

本文簡要介紹rust語言中 Function std::ptr::slice_from_raw_parts_mut 的用法。

用法

pub fn slice_from_raw_parts_mut<T>(data: *mut T, len: usize) -> *mut [T]

執行與 slice_from_raw_parts 相同的函數,除了返回原始可變切片,而不是原始不可變切片。

有關詳細信息,請參閱 slice_from_raw_parts 的文檔。

這個函數是安全的,但實際上使用返回值是不安全的。有關切片安全要求,請參閱 slice::from_raw_parts_mut 的文檔。

例子

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; // assign a value at an index in the slice
};

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

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 Function std::ptr::slice_from_raw_parts_mut。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。