当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust CStr.from_bytes_with_nul用法及代码示例


本文简要介绍rust语言中 std::ffi::CStr.from_bytes_with_nul 的用法。

用法

pub fn from_bytes_with_nul(bytes: &[u8]) -> Result<&CStr, FromBytesWithNulError>

从字节切片创建 C 字符串包装器。

在确保字节切片为 nul-terminated 并且不包含任何内部 nul 字节后,此函数会将提供的 bytes 转换为 CStr 包装器。

例子

use std::ffi::CStr;

let cstr = CStr::from_bytes_with_nul(b"hello\0");
assert!(cstr.is_ok());

创建没有尾随 nul 终止符的 CStr 是错误的:

use std::ffi::CStr;

let cstr = CStr::from_bytes_with_nul(b"hello");
assert!(cstr.is_err());

创建带有内部 nul 字节的 CStr 是一个错误:

use std::ffi::CStr;

let cstr = CStr::from_bytes_with_nul(b"he\0llo\0");
assert!(cstr.is_err());

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 std::ffi::CStr.from_bytes_with_nul。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。