this question的所有答案关于将数组从 C 传递给 Rust 使用 std::slice::from_raw_parts
将原始 C 指针和一些长度信息转换为 Rust。在嵌入式上下文中(在我的情况下为 MOS 6502),可能没有 std
图书馆可用。所以在 #![no_std]
上下文 ,将数组从 C 传递到 Rust 以进行(可能可变的)处理的最佳方法是什么?
最佳答案
虽然 std::slice::from_raw_parts
在 no_std
中不可用环境, core::slice::from_raw_parts
可用,因此您可以简单地使用它。
一般来说,在 std
中的任何内容并且不以某种方式依赖于平台(因此,不是 I/O、堆分配等)也应该在 no_std
中可用。环境通过 core
箱。
关于arrays - 使用 #[!no_std] 通过 FFI 将数组从 C 传递到 Rust,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69030484/