21次发布

0.2.12 2024年3月23日
0.2.11 2022年9月24日
0.2.10 2022年2月25日
0.2.9 2021年9月24日
0.1.3 2018年2月14日

#135 in #literals

Download history 15380/week @ 2024-03-14 14068/week @ 2024-03-21 11441/week @ 2024-03-28 11648/week @ 2024-04-04 12936/week @ 2024-04-11 10775/week @ 2024-04-18 11995/week @ 2024-04-25 18257/week @ 2024-05-02 18584/week @ 2024-05-09 18955/week @ 2024-05-16 19808/week @ 2024-05-23 18911/week @ 2024-05-30 19684/week @ 2024-06-06 19873/week @ 2024-06-13 19920/week @ 2024-06-20 17687/week @ 2024-06-27

80,138 每月下载量
用于 100 个crate (直接使用36个)

MIT 许可证

13KB
243

cstr

CI Crates.io Docs

这个crate已被废弃。Rust 1.77.0稳定了C字符串字面量。从该版本开始,可以使用 &'static CStr 替代此crate提供的 cstr!("abc")。这个新特性提供了更简洁的代码和更快的编译速度。因此,此crate将不再维护。

用于从字面量或标识符获取 &'static CStr 的宏。

此宏在编译时检查给定的字面量是否适合 CStr,并返回一个 CStr 的静态引用。

此宏可用于初始化常量。

示例

use cstr::cstr;
use std::ffi::CStr;

let test = cstr!(b"hello\xff");
assert_eq!(test, CStr::from_bytes_with_nul(b"hello\xff\0").unwrap());
let test = cstr!("hello");
assert_eq!(test, CStr::from_bytes_with_nul(b"hello\0").unwrap());
let test = cstr!(hello);
assert_eq!(test, CStr::from_bytes_with_nul(b"hello\0").unwrap());

依赖项

~84KB