本文简要介绍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 CStr.from_bytes_with_nul_unchecked用法及代码示例
- Rust CStr.from_ptr用法及代码示例
- Rust CStr.into_c_string用法及代码示例
- Rust CStr.to_bytes用法及代码示例
- Rust CStr.as_ptr用法及代码示例
- Rust CStr.to_str用法及代码示例
- Rust CStr.to_string_lossy用法及代码示例
- Rust CStr.to_bytes_with_nul用法及代码示例
- Rust CString.into_bytes用法及代码示例
- Rust CString.from_raw用法及代码示例
- Rust CString.into_boxed_c_str用法及代码示例
- Rust CStr用法及代码示例
- Rust CString.into_raw用法及代码示例
- Rust CString.as_c_str用法及代码示例
- Rust CString.from_vec_unchecked用法及代码示例
- Rust CString.from_vec_with_nul_unchecked用法及代码示例
- Rust CString.from_vec_with_nul用法及代码示例
- Rust CString.as_bytes用法及代码示例
- Rust CString用法及代码示例
- Rust CString.into_bytes_with_nul用法及代码示例
- Rust CString.as_bytes_with_nul用法及代码示例
- Rust CString.new用法及代码示例
- Rust CString.into_string用法及代码示例
- Rust Cursor.new用法及代码示例
- Rust Condvar.notify_all用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 std::ffi::CStr.from_bytes_with_nul。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。